以前一直沒留心,今天聽同事講起,馬上看看,功效強盛。
php的設定函數就是幾個ini_*的函數,重要是針對設定檔的把持,實在就四個函數:ini_get、ini_set、ini_get_all、ini_restore。個人覺得最有用的就是ini_set和ini_get。
* ini_get():取得設定檔的選項值
這個函數信任很多人都使過,就是取得設定檔中某一個選項的值,假如是true值就回傳1,如果是false值就回傳0 ,字串就回傳字串。
例如手冊中的例子:
/*
Our php.ini contains the following settings:
display_errors = On
register_globals = Off
post_max_size = 85_s; display_errors') . 'n'; //顯示錯誤是否開啟
echo 'register_globals = ' . ini_get('register_globals') . 'n';//全域變數是否開啟
echo 'post_max_size = ' . ini_get('post_max_max_size' ) . 'n';//最多能提交的檔案大小
echo 'post_max_size 1 = ' . (ini_get('post_max_size') 1) . 'n';
?>
輸出:
post_max_size = 8M
post_max_size 1 = 9
這個函數重要是為了取得設定文件,可以方便你很多把持。例如你想把持字串過濾,但是又不懂magic_quotes_gpc有沒有打開,所以你就可以這樣寫一個函數:
/* 字串過濾函數*/
function stringFilter($str)
if (ini_get( 'magic_quotes_gpc)') {
return $str;
} else {
return addslashes($str);
}
}
/* 變數偵測函數*/
function getGetVar($var)
{
return $var;
_ }
當然,你可以做很多用處,自己慢慢領會。
* ini_set函數:設定php.ini中的某些變數值
這個函數是設定選項中的值,在履行函數後生效,腳本結束的時候,這個設定也失效。不是所有的選項都能被改函數設定的。具體那些值能夠設置,可以查看手冊中的列表。
就是能夠設定php.ini中的選項值例如,display_error選項封閉了,但是你要顯示程序中的錯誤訊息,方便你調試程序,那麼就可以應用這個函數:
那麼在你這個頁面的程式都會顯示錯誤訊息了,而且你還可以應用error_reporting來設定顯示的錯誤訊息等級。
ini_set('max_execution_time', '180');
那麼腳本履行時間就由預設的30秒變為180秒,當然,你也可以應用set_time_limit ()來設定。
實在你把ini_set和ini_get聯合使的話,非常好。例如你想在設定檔裡加入自己的包含檔路徑,但你有沒有權限更改php.ini,那你可以結合兩個函數: