一个实用的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 选项指定的文件大小';