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稍大一點。