首頁  >  文章  >  資料庫  >  為什麼 `ini_set()`、`set_time_limit()` 和 `max_execution_time` 在安全模式下無法如預期運作?

為什麼 `ini_set()`、`set_time_limit()` 和 `max_execution_time` 在安全模式下無法如預期運作?

DDD
DDD原創
2024-10-28 01:57:02188瀏覽

Why Don't `ini_set()`, `set_time_limit()`, and `max_execution_time` Work as Expected in Safe Mode?

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn