PHP  $_FILE 只能读取name读取不到size

记录一下$_FILE能读取name,但是size为0, error为1.

出现这种错误的原因是因为php.ini中的upload_max_filesize限制了文件上传的大小,以前默认的是2M。如果上传图片超过2M就会出现以上状况,这就是为什么明明数据提交成功了,但是服务器仍然收不到数据的原因。

还有一种状况就是,如果你用的nginx作为服务,里面也有一个文件上传的限制,client_max_body_size 此配置默认值是1M,如果你上传的文件大小超过1M就会出现413 Request Entity Too Large

所以,在实际开发中,在lnmp环境中,受环境影响上传文件大小的有两个:

第一个:php.ini中的upload_max_filesize,默认值是2M,出错的情况是数据提交成功,但是php $_FILE不能收到数据,error的值为1

第二个:nginx中的client_max_body_size,默认值是1M,出现错误的情况是提交数据的时候http协议请求的状态码为413,错误信息为Request Entity Too Large。

评论
...

小明

有来过,666666。

4楼  2017-08-08  23:15发表