php之上传小案例,根据时间:月日分创建目录并随机生成文件名

简介: <?php /* 接收文件,并分目录存储,生成随机文件名 1.根据时间戳,并按一定规则创建目录 2.获取文件名的后缀名 3.判断大小 */ //根据月日分计算并创建目录 function mk_dir(){ $dir = date('md/i', time()); if(is_dir('./' .$dir)){ return $dir; }e
<?php
/*
接收文件,并分目录存储,生成随机文件名
1.根据时间戳,并按一定规则创建目录
2.获取文件名的后缀名
3.判断大小
*/


//根据月日分计算并创建目录
function mk_dir(){
	$dir = date('md/i', time());
	if(is_dir('./' .$dir)){
		return $dir;
	}else{
		mkdir('./'.$dir,0777,true);
		return $dir;
	}
}
//获取文件后缀
function getExt($file) {
	$tmp = explode('.',$file);
	return end($tmp);
}
//随机生成移动后的文件名
function randName() {
	$str = 'abcdefghijkmnpqrstwxyz23456789';
	return substr(str_shuffle($str),0,6);
}
//判断错误代码,=0则上传成功,!=0则上传失败
if($_FILES['pic']['error'] !=0){
	echo "上传失败";
} 

//处理上传过程

$pic = $_FILES['pic'];

//拼接文件路径
$path = './' .mk_dir().'/'.randName(). '.' .getExt($pic['name']);

//移动
if(move_uploaded_file($pic['tmp_name'],$path)) {
	echo '上传成功';
} else{
	echo "上传失败";
}

?>

目录
相关文章
|
4月前
|
存储 缓存 PHP
【PHP开发专栏】PHP文件操作与目录管理
【4月更文挑战第30天】本文介绍了PHP中的文件操作和目录管理。内容涵盖文件的打开、关闭、读写、删除及状态检测,如`fopen`、`fclose`、`fread`、`fwrite`、`file_get_contents`等函数。此外,还涉及文件高级操作如锁定和指针操作。在目录管理方面,讲解了创建、删除目录及读取目录内容的函数,如`mkdir`、`rmdir`、`scandir`等。通过示例代码展示了如何在实践中应用这些函数。理解这些基础知识对处理文件系统相关问题至关重要。
55 1
|
4月前
|
运维 Linux Apache
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
LAMP架构调优(十)——Apache禁止指定目录PHP解析与错误页面优化
271 2
|
4月前
|
网络协议 PHP