PHP定时任务:ignore_user_abort+dowhile sleep+file_get_content crontab(php执行 curl请求) Swoole\Timer::tick
生活随笔
收集整理的這篇文章主要介紹了
PHP定时任务:ignore_user_abort+dowhile sleep+file_get_content crontab(php执行 curl请求) Swoole\Timer::tick
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.死循環方式
<?php ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行. set_time_limit(0);// 通過set_time_limit(0)可以讓程序無限制的執行下去 ini_set('memory_limit','512M'); // 設置內存限制 $interval=60*30;// 每隔半小時運行 do{//ToDo sleep($interval);// 等待5分鐘 } while(true);2.死循環加開關的方式
config.php <?phpreturn 1; ?>cron.php <?php ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行. set_time_limit(0);// 通過set_time_limit(0)可以讓程序無限制的執行下去 $interval=60*30;// 每隔半小時運行 do{$run = include 'config.php';if(!$run) die('process abort');//ToDosleep($interval);// 等待5分鐘 } while(true);3.連續file_get_content請求形式
<?php $time=15; $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; /*function */ sleep($time); file_get_contents($url); ?> php腳本sleep 一段時間之后通過訪問自身的方式繼續執行. 就好像接力賽跑一樣..這樣就能保證每個PHP腳本 執行時間不會太長. 也就不受time_out的限制了.因為每一次一次循環php文件都是獨立執行,所以這種方法,避免了time_out的限制. 但是最好和上邊一樣 加上 控制代碼. cofig.php , 以便能夠終止進程.4.crontab
4.1在Crontab中使用PHP執行腳本
00 * * * * /usr/local/bin/php /home/john/myscript.php4.2在Crontab中使用URL執行腳本
下面的例子是使用Lynx文本瀏覽器訪問URL來每小時執行PHP腳本。Lynx文本瀏覽器默認使用對話方式打開 URL。但是,像下面的,我們在lynx命令行中使用-dump選項來把URL的輸出轉換來標準輸出。 00 * * * * lynx -dump http://www.sf.net/myscript.php下面的例子是使用 CURL 訪問URL來每5分執行PHP腳本。Curl默認在標準輸出顯示輸出。使用 "curl -o" 選 項,你也可以把腳本的輸出轉儲到臨時文件temp.txt。 */5 * * * * /usr/bin/curl -o temp.txt http://www.sf.net/myscript.php下面的例子是使用WGET訪問URL來每10分執行PHP腳本。-q 選項表示安靜模式。"-O temp.txt" 表示輸出會發 送到臨時文件。 */10 * * * * /usr/bin/wget -q -O temp.txt http://www.sf.net/myscript.php5.Swoole\Timer::tick
Swoole\Timer::tick(2000, function ($timer_id) {echo "2s--timeId--{$timer_id}"; }); //毫秒?
總結
以上是生活随笔為你收集整理的PHP定时任务:ignore_user_abort+dowhile sleep+file_get_content crontab(php执行 curl请求) Swoole\Timer::tick的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP设计模式:工厂(静态方法里调用ne
- 下一篇: 动态规划算法php,php算法学习之动态