ini_set、set_time_limit 和max_execution_time:為什麼它們可能不起作用
許多開發人員在嘗試修改PHP 的最大執行時間時遇到問題使用ini_set() 或set_time_limit() 等函數的腳本。儘管在本地設定了所需的時間限制,但他們觀察到預設值 30 在遠端伺服器上保持不變。
根本原因:安全模式限制
PHP 手冊的運行時max_execution_time 的配置部分揭示了這種行為。它解釋了在安全模式下禁止透過 ini_set() 更改此設定。若要繞過此限制,請停用安全模式或在 php.ini 設定檔中手動編輯時間限制。
也適用於 set_time_limit()
這很重要請注意,根據其文檔,同樣的限制也適用於 set_time_limit() 函數。 當安全模式處於活動狀態時,這兩個功能都無法覆蓋預設時間限制。
結論
總而言之,遠端伺服器上的安全模式可以防止修改到執行時限。停用安全模式或手動編輯 php.ini 設定檔來解決此問題。
以上是為什麼 `ini_set()`、`set_time_limit()` 和 `max_execution_time` 在安全模式下無法如預期運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!