PHP 图片上传函数

 
 
 1 function UploadImg(){
 2 
 3     $sfile = $_FILES['img']['tmp_name'];
 4 
 5     # 定义目标目录
 6     $uploaddir = 'uploads';
 7 
 8     # 创建总目录
 9     if (!file_exists($uploaddir)) {
10         mkdir('uploads');
11     }
12 
13     # 创建日期目录
14     $year = date('Y');
15     $month = date('m');
16     $day = date('d');
17     $datedir = $uploaddir.'/'.$year.'-'.$month.'-'.$day;
18 
19     if (!file_exists($datedir)) {
20         mkdir($datedir);
21     }
22 
23     # 加工文件名
24     $farr = explode('.',$_FILES['img']['name']);
25     $fext = array_pop($farr);
26     $sfrand = time().mt_rand();
27     $frand = 'ts'.mb_substr($sfrand,5,10);
28     $fname = $frand.'.'.$fext;
29 
30     # 最终上传路径和文件名
31     $dfile = $datedir.'/'.$fname;
32 
33     # 限制文件上传大小
34     $size = 5*1024*1024;
35 
36     # 限制文件上传类型
37     $allows = array('jpg','png','gif');
38 
39     # 文件上传移动操作
40     if (in_array($fext,$allows)) {
41 
42         if ($filesize <= $size) {
43             # 文件上传移动操作
44             move_uploaded_file($sfile, $dfile);
45         }else{
46             exit(json_encode(array('code'=>1,'msg'=>'上传失败,文件大小超过5M!')));
47         }
48         
49     }else{
50         exit(json_encode(array('code'=>1,'msg'=>'上传的文件类型只允许为:jpg、png、gif')));
51     }
52 
53     # 返回文件路径,便于存储数据库
54     return $dfile;
55 }
 
  
 
 

猜你喜欢

转载自www.cnblogs.com/yachyu/p/10706239.html