php大牛们,我做的多文件上传封装函数不知道哪里出问题,帮忙看下什么原因。

functionuploadFile($fileInfo,$paht='./uploads',$flag=true,$maxSize=2049152,$allowExt=... function uploadFile($fileInfo,$paht='./uploads',$flag=true,$maxSize = 2049152,$allowExt = array('jpg','png','jpeg','gif')){
//判断错误号
if($fileInfo['error']===UPLOAD_ERR_OK){
//$flag = true;
//$allowExt = array('jpg','png','jpeg','gif');
//$maxSize = 2049152;
//检测上传文件的大小
if($fileInfo['size']>$maxSize){
$res['mes'] = $fileInfo['name'].'文件上传过大';
}
//检测上传文件类型
//$ext = pathinfo($fileInfo['name'],PATHINFO_EXTENSION);
$ext = getExt($fileInfo['name']);
if(!in_array($ext,$allowExt)){
$res['mes'] = $fileInfo['name'].'非法文件类型';
}

//检测是否是真实图片类型
if($flag){
if(!getimagesize($fileInfo['tmp_name'])){
$res['mes'] = $fileInfo['name'].'图片不是真实的图片';
}
}
//检测是否是通过http post上传的
if(!is_uploaded_file($fileInfo['tmp_name'])){
$res['mes'] = $fileInfo['name'].'图片不是通过http,post方式上传的';
}

if($res) return $res;
$path = './uploads';
if(!file_exists($path)){
mkdir($path,0777,true);
chmod($path,0777);
}
$uniName=getUniName(); //调用封装好的函数,即唯一的文件名
$destination = $path.'/'.$uniName.'/'.$ext;
//移动临时文件(tmp_name)到制定的目录
if(!move_uploaded_file($fileInfo['tmp_name'],$destination)){
$res['mes'] = $fileInfo['name'].'文件移动失败';
}
$res['mes'] = $fileInfo['name'].'文件上传成功';
$res['dest'] = $destination;
return $res;
}else{
switch($fileInfo['error']){
//匹配错误信息
case 1:
$res['mes']= '上传文件超过了配置文件中upload_max_fileseix选项的值';
break;
case 2:
$res['mes']= '超过了表单MAX_FILE_SIZE限制的大小';
case 3:
$res['mes']= '文件部分被上传';
case 4:
$res['mes']= '没有上传文件';
case 5:
$res['mes']= '临时文件目录不存在';
break;
case 7:
case 8:
$res['mes']= '系统错误';
break;
}
return $res;
}
}
总共用三个文件
commo..func.php封装的是图片后缀名

<?php

//得到文件后缀名(扩展名)
function getExt($filename){
return strtolower(pathinfo($filename,PATHINFO_EXTENSION));
}
//产生唯一字符串,当做唯一图片吗
function getUniName($filename){
return md5(uniqid(microtime(true),true));
}
?>
展开
 我来答
百度网友b79519e
2014-11-30 · TA获得超过3399个赞
知道大有可为答主
回答量:1417
采纳率:100%
帮助的人:1321万
展开全部
只看到单文件上传处理部分
没看到多文件处理。。
这个用来处理单文件上传是可以的
然后调用多次就可以处理多文件上传了
如果想在这里处理多文件上传,需要$fileinfo 参数传进来多个文件的信息
追问
$fileinfo 参数是那个参数
追答
uploadFile 函数的第一个参数啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式