文件上传测试成功

Original 2019-03-03 15:58:36 291
abstract:function upload_file($fileInfo,$uploadpath='./upload',$allowExt=['png','jpg'],$maxsize=1000000){    if($fileInfo['error']===0){    //获取上传的文件后缀,判断文件

function upload_file($fileInfo,$uploadpath='./upload',$allowExt=['png','jpg'],$maxsize=1000000){

    if($fileInfo['error']===0){

    //获取上传的文件后缀,判断文件类型

    $ext=strtolower(pathinfo($fileInfo['name'],PATHINFO_EXTENSION));

if(!in_array($ext, $allowExt)){

return '非法文件类型!';

}

//判断文件大小

if($fileInfo['size']>$maxsize){

return '超出文件上传的最大值!';

}

//判断文件是否值用过http中以post方式传递的

if(!is_uploaded_file($fileInfo['tmp_name'])){

return '非法上传!';

}

//将文件移到指定的目录下,先要判断是否有这个目录

if(!is_dir($uploadpath)){

mkdir($uploadpath,0777,true);

}

//文件名转换,避免有相同文件名来造成冲突

$uniName=md5(uniqid(mktime(true),true));//uniqid()生成唯一id,mktime()获取当前时间的微秒数

$dest=$uploadpath.'/'.$uniName.'.'.$ext;//拼接文件路径

if(!move_uploaded_file($fileInfo['tmp_name'], $dest)){//move_uploaded_file移动文件,参数:文件名,文件要移到的路径

return '文件上传失败!';

}

return '文件上传成功!';

    }else{

    switch($fileInfo['error']){

    case 1:

$res='上传文件超过了php.ini中upload_max_filesize选项限制的值';

break;

case 2:

$res='上传文件的大小超过了html表单中MAX_FILE_SIZE选项指定的值';

break;

case 3:

$res='文件只有部分被上传';

break;

case 4:

$res='没有文件被上传';

break;

case 6:

case 7:

$res='系统错误';

break;

    }

    }

}


Correcting teacher:西门大官人Correction time:2019-03-03 16:35:07
Teacher's summary:$allowExt这个变量在哪里定义的?代码中貌似没有啊

Release Notes

Popular Entries