>  기사  >  백엔드 개발  >  php多文件下传,文件下传封装

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

WBOY
WBOY원래의
2016-06-13 10:47:38692검색

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

/**
?* add by huangwenyuan 2011-7-27 多文件上传,返回一个数组,该数组内存放数组,每个数组包含文件上传的随机码文件名和真实文件名
?* Enter description here ...
?* @param unknown_type $formFilename
?* @param unknown_type $filePath
?* @param unknown_type $newFileName
?* @param unknown_type $fileTypeArray
?* @param unknown_type $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) {
???????????? case 1: $msg = 2; break;
???????????? case 2: $msg = 2; break;
???????????? case 3: $msg = 3; break;
???????????? case 4: $msg = -1; break;
???????? }
??}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으로 문의하세요.