PHP上传文件如何知道超过upload_max_file的值 php上传文件 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $_FILES 为空就是一个信号,phpinfo() 看post_max_file的值也能知道。 加个判断 $File['size'] <= 500 * 1024 or die(2); //文件超出500kb 超過就直接出錯了。還怎樣知道呢?一般做法是post_max_size設大,然後在程序中限制。 $_FILES["file"]["error"]是错误代码,0表示没有错误,下面几种对应不同的错误1 : 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值.2 : 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。3 : 文件只有部分被上传4 : 没有文件被上传 //按不同的上传模式设置参数 if(isset($_SERVER['HTTP_CONTENT_DISPOSITION']) && preg_match('/attachment;\s+name="(.+?)";\s+filename="(.+?)"/i', $_SERVER['HTTP_CONTENT_DISPOSITION'], $info)) { $this->upload_method = self::HTML5_UP; //获取原始文件名 $this->upload_name = urldecode($info[2]); //获取文件类型 $this->upload_type = pathinfo($this->upload_name, PATHINFO_EXTENSION); //获取文件出错情况 $this->upload_error = 0; //获取文件大小 $this->upload_size = $_SERVER['CONTENT_LENGTH']; //获取原始文件扩展名 $this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION); } else if(isset($this->upload_file)) { $this->upload_method = self::NORMAL_UP; //获取原始文件名 $this->upload_name = $this->upload_file[$this->upload_flag_name]["name"]; //获取文件类型 $this->upload_type = $this->upload_file[$this->upload_flag_name]["type"]; //获取临时文件名 $this->upload_tmp_name = $this->upload_file[$this->upload_flag_name]["tmp_name"]; //获取文件出错情况 $this->upload_error = $this->upload_file[$this->upload_flag_name]["error"]; //获取文件大小 $this->upload_size = $this->upload_file[$this->upload_flag_name]["size"]; //获取原始文件扩展名 $this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION); } else { $this->upload_error = 6; }思路就是4楼的思路,这是代码实现,可以获得上传文件的参数,包括文件大小。有苏州的PHP开发者吗?欢迎加入苏州PHP开发者部落,群号码:262578767 遇到一个有意思的问题,不知道怎么说,大家进来看下吧 实现动态网页的问题 请问如何获得所选字段,在代码中左右2侧的标签 php向mysql插入数据传空值问题 如何实现自动生成静态页面的功能 请问这段上传代码为什么在服务器通过,在本地不行??解决后立即结帖 我经过思考了 但是还是有问题~~~~大侠帮忙帮忙 关于用PHP做在线人数查询 诚邀大连的PHP开发人员(急!!!) 为什么我TP框架里面只有一个Action里面的success()里面的U失效了? PHP正则验证密码 注册时在服务器端应该做什么验证字段的合法性?
$File['size'] <= 500 * 1024 or die(2); //文件超出500kb
1 : 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值.
2 : 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
3 : 文件只有部分被上传
4 : 没有文件被上传
if(isset($_SERVER['HTTP_CONTENT_DISPOSITION']) &&
preg_match('/attachment;\s+name="(.+?)";\s+filename="(.+?)"/i',
$_SERVER['HTTP_CONTENT_DISPOSITION'], $info))
{
$this->upload_method = self::HTML5_UP;
//获取原始文件名
$this->upload_name = urldecode($info[2]);
//获取文件类型
$this->upload_type = pathinfo($this->upload_name, PATHINFO_EXTENSION);
//获取文件出错情况
$this->upload_error = 0;
//获取文件大小
$this->upload_size = $_SERVER['CONTENT_LENGTH'];
//获取原始文件扩展名
$this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION);
}
else if(isset($this->upload_file))
{
$this->upload_method = self::NORMAL_UP;
//获取原始文件名
$this->upload_name = $this->upload_file[$this->upload_flag_name]["name"];
//获取文件类型
$this->upload_type = $this->upload_file[$this->upload_flag_name]["type"];
//获取临时文件名
$this->upload_tmp_name = $this->upload_file[$this->upload_flag_name]["tmp_name"];
//获取文件出错情况
$this->upload_error = $this->upload_file[$this->upload_flag_name]["error"];
//获取文件大小
$this->upload_size = $this->upload_file[$this->upload_flag_name]["size"];
//获取原始文件扩展名
$this->ext_name = pathinfo($this->upload_name, PATHINFO_EXTENSION);
}
else
{
$this->upload_error = 6;
}思路就是4楼的思路,这是代码实现,可以获得上传文件的参数,包括文件大小。有苏州的PHP开发者吗?欢迎加入苏州PHP开发者部落,群号码:262578767