社区
基础编程
帖子详情
PHP上传文件如何知道超过upload_max_file的值
zhouyequ
2014-12-11 11:20:02
在用PHP上传文件的时候,如果上传文件超过post_max_file的时候,$_FILES打印出来的是NULL值,请问各位朋友,有什么方法知道已经超过post_max_file的值,而且让它报相应的错误呢?
...全文
249
5
打赏
收藏
PHP上传文件如何知道超过upload_max_file的值
在用PHP上传文件的时候,如果上传文件超过post_max_file的时候,$_FILES打印出来的是NULL值,请问各位朋友,有什么方法知道已经超过post_max_file的值,而且让它报相应的错误呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
司码君
2014-12-15
打赏
举报
回复
//按不同的上传模式设置参数 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
「已注销」
2014-12-15
打赏
举报
回复
$_FILES["file"]["error"]是错误代码,0表示没有错误,下面几种对应不同的错误 1 : 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值. 2 : 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 3 : 文件只有部分被上传 4 : 没有文件被上传
一起混吧
2014-12-12
打赏
举报
回复
$_FILES 为空就是一个信号,phpinfo() 看post_max_file的值也能知道。
傲雪星枫
2014-12-12
打赏
举报
回复
超過就直接出錯了。還怎樣知道呢? 一般做法是post_max_size設大,然後在程序中限制。
「已注销」
2014-12-12
打赏
举报
回复
加个判断 $File['size'] <= 500 * 1024 or die(2); //文件超出500kb
如何修改
PHP
上传文件
大小的限制
1,在
PHP
编辑器中输入函数:
php
info(),获取配置文件
php
.ini的目录; 2,修改配置文件
php
.ini中的三个参数:
max
_execution_time、post_
max
_size、
upload
_
max
_
file
。注意,如果将
max
_execution_time设置为0,表示上传时间没有限制;在设置时要保证:post_
max
_size>=
upload
_
max
php
日志错误异常处理
PHP
输出所有的错误报告error_reporting=E_ALL设置 例如不显示警告error_reporting=E_ALL & ~E_WARNING 用
PHP
函数设置
PHP
.INI ini_set() 如 ini_set(“error_reporting”,E_ALL) 获取
PHP
.ini里面的
值
可以用函数ini_get() 如ini_get(“
upload
_
max
_
file
PHP
上传文件
时,文件过大$_
FILE
S为空
在
php
中判断
上传文件
的大小,但是文件一但过大,print_r($_
FILE
S);的
值
就变为null了,有时候大家会遇到这么一个问题,上传小文件时,
PHP
能正常获取到,但是文件一
超过
8M就变为空了,我在做项目的时候,就遇到这样的问题,我刚开始把最大
上传文件
值
改为20M,在
PHP
.
php
上传大文件
PHP
上传文件
时,文件过大$_
FILE
S为空 在
php
中判断
上传文件
的大小,但是文件一但过大,print_r($_
FILE
S);的
值
就变为null了,有时候大家会遇到这么一个问题,上传小文件时,
PHP
能正常获取到,但是文件一
超过
8M就变为空了,我在做项目的时候,就遇到这样的问题,我刚开始把最大
上传文件
值
改为20M,在
PHP
.INI里面,
PHP
代码 ;
Max
imumalloweds...
在
php
.ini中设置表单
上传文件
的大小,以及获取设置的
值
的方法 .
在
php
.ini中
PHP
上传文件
涉及到的参数
PHP
默认的上传限定是最大2M,想上传
超过
此设定的文件,需要调整
PHP
、apache等的一些参数. 下面,我们简要介绍一下
PHP
文件上传涉及到的一些参数:
file
_
upload
s 是否允许通过HTTP
上传文件
的开关,默认为ON即是开
基础编程
21,873
社区成员
140,452
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章