一: 每隔30s執(zhí)行一次,將字符串寫入文件
// 30秒執(zhí)行一次
ignore_user_abort(true); //即使Client斷開(如關(guān)掉瀏覽器),PHP腳本也可以繼續(xù)執(zhí)行.
set_time_limit(0); // 執(zhí)行時(shí)間為無(wú)限制,php默認(rèn)執(zhí)行時(shí)間是30秒,可以讓程序無(wú)限制的執(zhí)行下去
$interval=30; //每隔30秒運(yùn)行一次
do{
/** **要執(zhí)行的操作 */
// file_put_contents("D://log.log",123,FILE_APPEND);//記錄日志
sleep($interval); // 按設(shè)置的時(shí)間等待30秒循環(huán)執(zhí)行
// 其他操作
}while(true);
注釋:file_put_contents(“D://log.log”,$msg,FILE_APPEND);方法的作用是:將一個(gè)字符串寫入文件。FILE_APPEND作用:如果文件已經(jīng)存在,追加數(shù)據(jù)而不是覆蓋。
// 30秒執(zhí)行一次
ignore_user_abort(); //即使Client斷開(如關(guān)掉瀏覽器),PHP腳本也可以繼續(xù)執(zhí)行.
set_time_limit(0); // 執(zhí)行時(shí)間為無(wú)限制,php默認(rèn)執(zhí)行時(shí)間是30秒,可以讓程序無(wú)限制的執(zhí)行下去
$interval=30; // 每隔30秒運(yùn)行一次
do{
// 要執(zhí)行的操作
echo "string";
ob_flush();//把數(shù)據(jù)從PHP的緩沖(buffer)中釋放出來(lái)。
flush(); //把不在緩沖(buffer)中的或者說是被釋放出來(lái)的數(shù)據(jù)發(fā)送到瀏覽器。
sleep($interval); // 按設(shè)置的時(shí)間等待30秒循環(huán)執(zhí)行
// 其他操作
}while(true);
flush() 函數(shù)不會(huì)對(duì)服務(wù)器或客戶端瀏覽器的緩存模式產(chǎn)生影響。因此,必須同時(shí)使用 ob_flush() 和flush() 函數(shù)來(lái)刷新輸出緩沖。順序是先ob_flush(),然后flush(),它們的作用是刷新緩沖區(qū)。
//30秒后執(zhí)行一次
ignore_user_abort(); //即使Client斷開(如關(guān)掉瀏覽器),PHP腳本也可以繼續(xù)執(zhí)行.
set_time_limit(0); // 執(zhí)行時(shí)間為無(wú)限制,php默認(rèn)執(zhí)行時(shí)間是30秒,可以讓程序無(wú)限制的執(zhí)行下去
$interval=30; // 每隔30秒運(yùn)行一次
$status = 1;
while($status)
{
$status = 0;
sleep($interval);
echo "123";
ob_flush();//把數(shù)據(jù)從PHP的緩沖(buffer)中釋放出來(lái)。
flush(); //把不在緩(buffer)中的或者說是被釋放出來(lái)的數(shù)據(jù)發(fā)送到瀏覽器。
}
exit();
個(gè)人感覺php定時(shí)執(zhí)行任務(wù)的效率不是很高,所以不推薦使用。
發(fā)表評(píng)論 取消回復(fù)