ホームページ  >  記事  >  バックエンド開発  >  PHPマルチファイルダウンロード、ファイルダウンロードのカプセル化

PHPマルチファイルダウンロード、ファイルダウンロードのカプセル化

WBOY
WBOYオリジナル
2016-06-13 13:14:10832ブラウズ

php多文件上传,文件上传封装

/**
?* huangwenyuan によって追加 2011-7-27 複数のファイルをアップロードします。配列を返します。配列には配列が格納されます。各配列にはランダム コード ファイル名とファイル アップロードの実際のファイル名が含まれます。
?* ここに説明を入力してください..
?* @paramunknown_type $formFilename
?* @paramknown_type $filePath
?* @paramunknown_type $newFileName
?* @param不明なタイプ $fileMaxSize
?*/
function filesUpload($formFilename, $filePath,
?????????????? $fileTypeArray= array('image /pjpeg','application/pdf'), $fileMaxSize = 2000000){

???? $file_num = count($_FILES[$formFilename]['name']);//获取文件上传个数? $msgPaths = array();
????
?? for ($i = 0; $i ???? ?$file_name = $_FILES[$formFilename]['name'][$i];
??$file_type = $_FILES[$formFilename]['type'][$i];
??$ file_temp = $_FILES[$formFilename]['tmp_name'][$i];
??$file_size = $_FILES[$formFilename]['size'][$i];
??$file_error = $_FILES[$formFilename]['error'][$i];
??
??if($file_error>0){
???$msg = 1;
?? ??? switch($file_error) {
????????????ケース 1: $msg = 2;休憩;
????????????ケース 2: $msg = 2;休憩;
????????????ケース 3: $msg = 3;休憩;
????????????ケース 4: $msg = -1;休憩;
?????????? }
??}else if($file_size > $fileMaxSize){
???$msg = 2;
??}else if(! in_array($file_type, $fileTypeArray)){
???$msg = 4;
??}else if(! f_createDirN($filePath)){
???$msg = 5;
??}else{
? ??$ext = f_getExt($file_name); //扩展名
???$new_file_name = f_random().$ext;
?
???//$fileName = iconv("utf-8","gbk",$fileName) ; //处理中文乱码
???move_uploaded_file($file_temp, $filePath . iconv("utf-8","gbk",$new_file_name));???
???$msg = 0;
??}
??
??$msgPath = array(
????? 'filePath' => $filePath.$new_file_name,
???'fileName' =>$file_name
??);
??
??$msgPaths[$i] = $msgPath;
?? ?}????

?? ?return $msgPaths;}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。