php文件上传类程序代码课案.doc
文本预览下载声明
php文件上传类程序代码
我们现在只要搜索文件上传类有大把,但是真正好用的上传类不多,下面我介绍这个文件上传类是我自己使用了很久,非常不错的一个代码,大家可参考参考一。
?代码如下 复制代码 ?php?/**? *?文件上传类? */?class uploadFile {???? public $max_size = 1000000;//设置上传文件大小??? public $file_name = date;//重命名方式代表以时间命名,其他则使用给予的名称??? public $allow_types;//允许上传的文件扩展名,不同文件类型用“|”隔开??? public $errmsg = ;//错误信息??? public $uploaded = ;//上传后的文件名(包括文件路径)??? public $save_path;//上传文件保存路径??? private $files;//提交的等待上传文件??? private $file_type = array();//文件类型??? private $ext = ;//上传文件扩展名???? /**???? * 构造函数,初始化类???? * @access public???? * @param string $file_name 上传后的文件名???? * @param string $save_path 上传的目标文件夹???? */??? public function __construct($save_path = ./upload/,$file_name = date,$allow_types = ) {??????? $this-file_name?? = $file_name;//重命名方式代表以时间命名,其他则使用给予的名称??????? $this-save_path?? = (preg_match(//$/,$save_path)) ? $save_path : $save_path . /;??????? $this-allow_types = $allow_types == ? jpg|gif|png|zip|rar : $allow_types;??? }???? /**???? * 上传文件???? * @access public???? * @param $files 等待上传的文件(表单传来的$_FILES[])???? * @return boolean 返回布尔值???? */??? public function upload_file($files) {??????? $name = $files[name];??????? $type = $files[type];??????? $size = $files[size];??????? $tmp_name = $files[tmp_name];??????? $error = $files[error];???????? switch ($error) {??????????? case 0 : $this-errmsg = ;??????????????? break;??????????? case 1 : $this-errmsg = 超过了php.ini中文件大小;??????????????? break;??????????? case 2 : $this-errmsg = 超过了MAX_FILE_SIZE 选项指定的文件大小;??????????????? break;??????????? case 3 : $this-errmsg = 文件只有部分被上传;??????????????? break;??????????? case 4 : $this-errmsg = 没有文件被上传;??????????????? break;??????????? case 5 : $this-errmsg = 上传文件大小为0;??????????????? break;??????????? default : $this-errmsg = 上传文件失败!;??????????????? break;??????????? }??????? if($error == 0 is_uploaded_file($tmp_name)) {??????????? //检测文件类型??????????? if($this-check_file_type($name) == FALSE){??????????????? return FALSE;
显示全部