利用ini_set可以快速的修改php.ini配置設置哦,無需打開php.ini就可以了,特別是虛擬主機時你沒有修改php.ini的權限時就會發現這個函數的作用了,關於ini_set,post_max_size,upload_max_filesize,magic_quotes_gpc等用ini_set設置不了的解決辦法! 代碼如下 復制代碼
ini_set(‘max_execution_time’,’10′);
ini_set(‘memory_limit’,’1024M’);
echo ‘max_execution_time = ‘ . ini_get(‘max_execution_time’) . ”
“;
echo ‘memory_limit = ‘ . ini_get(‘memory_limit’) . ”
“;
echo ‘post_max_size = ‘ . ini_get(‘post_max_size’) . ”
“;
echo ‘upload_max_filesize = ‘ . ini_get(‘upload_max_filesize’) . ”
“;
ini_set(‘max_execution_time’,’10′);
ini_set(‘memory_limit’,’1024M’);
注意:
post_max_size,upload_max_filesize用下面的方法是修改不了的.
ini_set(‘post_max_size’,’1024M’);
ini_set(‘upload_max_filesize’,’1024M’);
正確做法是用.htaccess文件:
代碼如下 復制代碼php_value upload_max_filesize “80M”
php_value post_max_size “80M”
php_value max_execution_time “2000″
php_value memory_limit “150M”
實例設置max_execution_time
代碼如下 復制代碼<?
$old_max_execution_time = ini_set('max_execution_time', 120);
echo "old timeout is $old_max_execution_time <br />";
$max_execution_time = ini_get('max_execution_time');
echo "new timeout is $max_execution_time <br />";
echo 'function sets supported in this install are:<br />';
$extensions = get_loaded_extensions();
foreach ($extensions as $each_ext)
{
echo "$each_ext <br />";
echo '<ul>';
$ext_funcs = get_extension_funcs($each_ext);
foreach($ext_funcs as $func)
{
echo "<li> $func </li>";
}
echo '</ul>';
}
?>
補充知識點:
其實在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修改。
magic_quotes_gpc 用 get_magic_quotes_gpc() 獲得,不能用 set_magic_quotes_gpc 修改,原因是沒這個函數。而magic_quotes_runtime可以用set_magic_quotes_runtime()來設置