Apache服务器处理:
ini_set('display_errors', 'Off');
ini_set('memory_limit', -1); //-1 / 10240M
ini_set("max_execution_time", 0);
//ini_set('magic_quotes_gpc', 'On');
<IfModule mod_php5.c>
php_value post_max_size 10M
php_value upload_max_filesize 8M
php_value max_file_uploads 50
</IfModule>
echo 'max_execution_time = ' . ini_get('max_execution_time') ;
注意: post_max_size,upload_max_filesize用下面的方法是修改不了的.
ini_set('post_max_size','10M');
ini_set('upload_max_filesize','8M');
正确做法是用.htaccess文件:
<IfModule mod_php5.c>
php_value post_max_size 10M
php_value upload_max_filesize 8M
php_value max_file_uploads 50
</IfModule>
补充知识点:
其实在php文档里有说明upload_max_filesize的可修改范围是PHP_INI_PERDIR。
PHP_INI_PERDIR的意思是域内指令可以在php.ini、httpd.conf或.htaccess文件中修改。
PHP_INI_SYSTEM 域内指令可以在php.ini和httpd.conf文件中修改所以upload_max_filesize用int_set是无法修改的。
只有可修改范围是PHP_INI_ALL的才可以用int_set修改。
用ini_get("upload_max_filesize")和ini_get("post_max_size")来提取php.ini里的上传文件的最大值和表单的最大值
把php.ini中的upload_max_filesize修改成了10M 还有那个post_max_size也修改成10M
1、post_max_size:指定POST数据所允许的最大大小
2、upload_max_filesize:表示上传文件的最大大小
3、max_execution_time:上传文件是需要时间的,这个值是php的默认超时时间,如果为0则不超时(建议不要这么设置),超时时间到的话文件还没有上传完成,则也会上传失败的,因此在修改上传文件大小限制的时候,也适当的调整一下这个参数,否则任然会上传失败的。
一般来说,post_max_size要设置的比upload_max_filesize稍大一点。
来源:https://www.cnblogs.com/joshua317/p/4961656.html