2012-05-22 116 views
-1

我正在使用php的網站。是否有可能在算法定義的時間發送cron作業?我可以在控制檯中添加這樣一個功能,或從我的PHP腳本發送它?我還沒有用過cron。使用算法發送cron作業?

+2

運行你是什麼意思?你有什麼嘗試?你卡在哪裏? – sarnold

+0

@sarnold,我還沒有使用cron作業。我需要一些指導來開始 – CyberJunkie

+0

@chris,它在一定的時間順序內是隨機的。蘭特()是PHP我可以用cron嗎? – CyberJunkie

回答

2

首先想到的是 - 使用php腳本每分鐘運行一次cron作業,該腳本會生成隨機數以檢查是否運行剩餘的作業。 這條線在crontab中運行cron作業每分鐘(與你的替代路徑)

*/1 * * * * /usr/bin/php /path/to/job.php 

或者,如果你不能直接調用PHP中,你可以使用捲曲或wget的那樣

*/1 * * * * /usr/bin/curl --silent --compressed http://yoursite.com/job.php 

而且在你的PHP文件做自己想做的檢查,如果它的時間來運行作業的其餘部分,像什麼:

if(rand(1, 60)==1) 
{ 
include 'the_actual_job.php'; 
} 
1

設置你的PHP腳本來執行每隔一小時,例如。然後將此代碼添加到腳本頂部

sleep(rand(1, 60)); 

現在,您的腳本將每小時+幾秒鐘執行一次。它是隨機的:)

+0

對不起,我的問題是誤導。我需要在算法定義的時間發送cron作業。我會在哪裏實施該代碼? – CyberJunkie

1

如果您想在特定時間安排工作,您可以使用「cron」的朋友「​​」,這將安排一個腳本所需的時間。

您只需火過像這樣的命令:

$reqtime = '17.00' 
system('at -f yourscript.sh ' . $reqtime); 

而且yourscript.sh會奇蹟般地在17.00今天

+0

謝謝,但我如何安排在代碼自動生成的時間作業? – CyberJunkie