本文实例讲述了php文件上传类。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
/** $file=new class_file($file_array,"flash/"); $file->set_allow_type(array("jpg","jpeg","gif")); $file->is_limit_size(); if(!$file->allow_file_size()){ echo $file->error; exit; } if(!$file->allow_file_type()){ echo $file->error; exit(); }else if(!$file->uploadfile()){ echo $file->error; exit; } **/ <?php class class_file{ private $file_type ; private $file_size ; private $save_path ; private $file_path ; private $allow_type = array (); private $allow_size ; private $file_name ; private $flag =false; private $mime_type ; private $is_limit_size =false; public $error ; //构造函数 function class_file( $file_array , $save_path ){ $this ->file_path= $file_array [ 'tmp_name' ]; $this ->file_size= $file_array [ 'size' ]; $this ->file_type= $file_array [ 'type' ]; $this ->save_path= $save_path ; } //设置允许的文件类型 function set_allow_type( $allow_type ){ $this ->allow_type= $allow_type ; } //设置允许的文件大小 function set_allow_size( $allow_size ){ $this ->allow_size= $allow_size ; } //文件上传 public function uploadfile(){ if (! $this ->allow_file_type()){ $this ->file_name(); } if (move_uploaded_file( $this ->file_path, $this ->save_path. $this ->file_name)){ return true; } else { $this ->error= "文件上传失败" ; return ; } } //判断文件上传的类型 function allow_file_type(){ $this ->file_name(); if (in_array( $this ->mime_type, $this ->allow_type)){ return true; } else { $this ->error= "不允许上传的类型" ; exit (); } } //判断文件上传的大小 function allow_file_size( $size =100){ if ( $this ->is_limit_size){ $this ->set_allow_size( $size ); if ( $this ->allow_size>= $this ->file_size){ return true; } else { $this ->error= "超过文件上传大小限制" ; } } } //是否限制文件大小 function is_limit_size(){ $this ->is_limit_size=true; } //文件类型和文件名称 function file_name(){ $this ->mime_type= substr ( $this ->file_type, strpos ( $this ->file_type, "/" )+1); if ( $this ->mime_type== "pjpeg" ){ $this ->mime_type= "jpg" ; } if ( $this ->mime_type== "x-ms-wma" ){ $this ->mime_type= "wma" ; } if ( $this ->mime_type== "x-ms-wmv" ){ $this ->mime_type= "wmv" ; } $this ->file_name= date ( "YmdHis" ). ".$this->mime_type" ; } function _get_file_name(){ return $this ->file_name; } } ?> |
希望本文所述对大家PHP程序设计有所帮助。