PHP ini_set用來設置php.ini的值,在函數執行的時候生效,腳本結束後,設置失效。無需打開php.ini文件,就能修改配置,對於虛擬空間來說,很方便。
函數格式:string ini_set(string $varname, string $newvalue)
不是所有的參數都可以配置,可以查看手冊中的列表。
常見的設置:
@ ini_set('memory_limit', '64M');
'menory_limit':設定一個腳本所能夠申請到的最大內存字節數,這有利於寫的不好的腳本消耗服務器上的可用內存。@符號代表不輸出錯誤。
@ini_set('display_errors', 1);
‘display_errors':設置錯誤信息的類別。
@ini_set('session.auto_start', 0);
‘session.auto_start':是否自動開session處理,設置為1時,程序中不用session_start()來手動開啟session也可使用session,
如果參數為0,又沒手動開啟session,則會報錯。
@ini_set('session.cache_expire', 180);
‘session.cache_expire':指定會話頁面在客戶端cache中的有限期(分鐘)缺省下為180分鐘。如果設置了session.cache_limiter=nocache時,此處設置無 效。
@ini_set('session.use_cookies', 1);
‘session.use_cookies':是否使用cookie在客戶端保存會話ID;
@ini_set('session.use_trans_sid', 0);
‘session.use_trans_sid':是否使用明碼在URL中顯示SID(會話ID),
默認是禁止的,因為它會給你用戶帶來安全危險:
1.用戶可能將包含有效的sid的URL通過email/irc/QQ/MSN等途徑告訴其他人。
2.包含有效sid的URL可能會保存在公用電腦上。
3.用戶可能保存帶有固定不變的SID的URL在他們的收藏夾或者浏覽歷史記錄裡。 基於URL的會話管理總是比基於Cookie的會話管理有更多的風險,所以應當禁用。