exec('ps aux |grep tweet',$output,$return_var);
if(count($output)>0){
exec('php ' . DOCROOT . 'gremlins/tweet_gremlin.php &');
file_put_contents(DOCROOT . 'gremlins/tweet_gremlin.log', date('r') . ' Tweet Gremlin was not running. Starting now...');
}
在我的頭上,這個代碼是有意義的,但它只是使瀏覽器無限循環。我試圖做的是檢查tweet_gremlin.php是否正在運行,如果它沒有運行,啓動它。 DOCROOT是代碼中較早定義的一個常量。
可能導致無限循環的唯一行是'exec('php'...)''。那個腳本是做什麼的? – 2012-08-02 17:29:03
您的'if'語句告訴PHP只有在它已經運行時才運行'tweet_gremlin.php'。 – Palladium 2012-08-02 17:29:52
@Palladium我認爲這只是其中的一部分,如果頁面「無限循環」,可能是因爲php腳本的exec正在等待它完成(看起來像一個守護進程)。如果是這種情況,你可能需要做一些事情,比如'exec('php yourfile.php >>/dev/null 2>&1&')'。雖然沒有嘗試過。 – tigrang 2012-08-02 17:36:15