使用set_time_limit()或的max_execution_time,沒有 「真正」 的限制(除了Windows)的執行時間,因爲PHP手冊中說:「真正」 的執行時間限制
注:
set_time_limit()函數和配置指令 max_execution_time隻影響腳本 本身的執行時間。在確定腳本運行的最長時間爲 時,不包括腳本執行 以外的任何活動時間,例如系統調用系統(),流操作, 數據庫查詢等。在測量時間是真實的Windows 上,這不是真的。
解決方案是proposed in PHP comments有一個「真正的」執行時間限制,就像我在找什麼,但我發現它不清楚/混淆。
真正的執行時間限制是由執行進程的系統設置的。如果達到限制(也稱爲硬限制),它可以終止進程。這是一個真正的限制,通常基於CPU時間,即一個進程所消耗的實際時間(不是該進程已經運行了多長時間)。 – hakre
[你正在談論的評論](http://www.php.net/manual/en/function.set-time-limit.php#105569)中提出的解決方案對我來說看起來不錯 - 只要你有POSIX和pcntl函數可用。你究竟對此瞭解甚麼? – DaveRandom
仔細查看PHP手冊中的建議有幫助:)我最初並不明白它是如何工作的(我不習慣線程處理)。 –