河汉清且浅,牵牛敦而纯

PHP上传文件的大小限制

Warning: POST Content-Length of 625523488 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

当 Warning: on line 0 做出错误警告时,设定 error_reporting(0); ini_set("display_errors", 0); 无效

如何不显示这种错误呢

方法一:设置 php.ini

;脚本执行最大时间 max_execution_time = 600
;脚本接收数据最大时间 max_input_time =60
;是否开启文件上传功能 file_uploads =On
;临时存放目录(默认使用系统的临时目录) upload_tmp_dir =
;允许客户端单个POST请求发送的最大数据 post_max_size =8M
;允许单个请求上传的最大文件大小 upload_max_filesize =2M
;允许单个POST请求同时上传的最大文件数量 max_file_uploads =20
;脚本占用的最大内存 memory_limit = 32m

PHP 允许使用字节值的快捷方式,包括 K(千)、M(兆)和 G(千兆)。如果使用其中任何一个,PHP 将自动进行转换。注意不要超过 32 位有符号整数限制(如果使用的是 32 位版本),因为这会导致脚本失败。

 

方法二:建立 .htaccess 文件,内容如下

php_value post_max_size 2000M
php_value upload_max_filesize 2500M
php_value max_execution_time 6000000
php_value max_input_time 6000000
php_value memory_limit 2500M

方法三:这种错误由于$_POST 和 $_FILES变量发布但为空值

if ($_SERVER['REQUEST_METHOD'] == 'POST' && count($_POST) < 1 ) {
$_SESSION['error'] = '上传文件尺寸大于系统设定值';
header('Location: upload.php');
return;
}

方法四:打开输出缓冲区

$buf = ob_get_contents();
ob_end_clean();
// echo $buf

方法五:使用JAVASCRIPT

posted on 2023-04-06 14:00  伊索  阅读(529)  评论(0编辑  收藏  举报