閱讀453 返回首頁    go 阿裏雲 go 技術社區[雲棲]


php之上傳小案例,根據時間:月日分創建目錄並隨機生成文件名

<?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 "上傳失敗";
}

?>

最後更新:2017-04-04 07:03:11

  上一篇:go 金庸小說中的八大經典戰役回顧
  下一篇:go php之文件上傳簡單介紹