<?php
var_dump($_FILES);
//开始判断错误号
$error = $_FILES['upload']['error'];
var_dump($error);
switch($error){
case 1:
exit('上传的文件超过了限制');
break;
case 2:
exit('上传的文件超过了表单提交的最大值');
break;
case 3:
exit('文件只有部分被上传');
break;
case 4:
exit('没有文件被上传');
break;
case 6:
exit('找不到临时文件夹');
case 7:
exit('文件写入失败');
break;
}
//判断文件大小
$filesize = $_FILES['upload']['size'];//获得上传的文件大小
$maxfilesize = 200000;//设置上传的最大值
if($filesize > $maxfilesize){
exit('上传的文件过大');
}
//判断是否是允许的类型,白名单方式
$allowtype = array('jpeg','jpg','bmp','png','gif');//定义允许上传的文件名
$filetype = pathinfo($_FILES["upload"]["name"]);
//var_dump ($filetype);
$file1 = $filetype['extension'];//获得上传文件的后缀名
//echo $file1;
if(!in_array($file1,$allowtype)){
exit('你传的什么玩意');
}
//判断mime类型是否合法,白名单方式
$allowmime = array('image/png','image/jpeg','image/jpg','image/gif');
//定义合法的mime
$filemime = $_FILES['upload']['type'];
//echo $filemime;
if(!in_array($filemime,$allowmime)){
exit('你上传的文件mime不合法');
}
//获得临时的文件名
$tmp_name = $_FILES['upload']['tmp_name'];
//echo $tmp_name;
//对上传来的文件进行随机重命名操作,命名方式为当前的时间加上1到9999之间的随机数再md5加密
$newname = md5(date('Ymdhis').rand(1,9999)).'.'.$file1;
//echo $newname;
//判断文件是否通过http post上传来的
if(is_uploaded_file($_FILES['upload']['tmp_name'])){
//移动临时文件到指定目录,完成上传
move_uploaded_file($_FILES['upload']['tmp_name'],'D:\wamp\www\96\1117\pic/'.$newname);
}
?>
© F0rg3t's Blog | Powered by LOFTER