可以說我有簡單的PHP腳本守護:開始PHP後臺程序從PHP腳本
#!/usr/local/bin/php -q
<?php
set_time_limit(0);
while(1){
//do something here
if ($something == "somethingelse"){exit;}
}
?>
我想從另一個PHP腳本運行。什麼是最好的方式來做到這一點? 我一直在使用捲曲對於像這樣:
$url = "url to php daemon file";
$ch = curl_init($url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT, 1);
curl_setopt($ch,CURLOPT_TIMEOUT, 1);
$not_important = curl_exec($ch);
curl_close($ch);
但是我正在尋找一個更好的主意,如果有一個:)。
對於通過遠程HTTP請求來運行它,您還需要'ignore_user_abort(TRUE)'。默認情況下,Web服務器會在遠程用戶斷開連接時終止正在運行的腳本。您的捲曲版本將運行腳本1秒,然後捲曲將超時並斷開連接,導致您的腳本死亡。 –
確保你這次標記的答案是正確的,也許更多的人會在未來幫助你! –
@MarcB Ignore_user_abort已關閉。但是這個捲曲腳本適合我。 –