詳解PHP實現(xiàn)執(zhí)行定時任務
PHP在這方面應該說是比較弱,如果只用php去實現(xiàn)可以如下:
<?php ignore_user_abort();//關(guān)閉瀏覽器后,繼續(xù)執(zhí)行php代碼 set_time_limit(0);//程序執(zhí)行時間無限制 $sleep_time = 1;//多長時間執(zhí)行一次 do{ $fp = fopen('test.txt','a+'); fwrite($fp,"這是一個php博客:phpddt.com \n"); fclose($fp); sleep($sleep_time); }while(true); ?>
但是當我執(zhí)行腳本的時候,即使我關(guān)閉了瀏覽器,我根本就沒法去停止這段程序了,所以你需要一個執(zhí)行腳本的開關(guān),你可以用外部文件引入的方法來實現(xiàn),在while循環(huán)的時候,include開關(guān)變量即可。那么就可以這樣實現(xiàn):
建立外部引入變量文件 switch.php 內(nèi)容如下:
<?php return 1;//1執(zhí)行腳本 0退出執(zhí)行腳本 ?>
改良腳本如下:
<?php ignore_user_abort();//關(guān)閉瀏覽器后,繼續(xù)執(zhí)行php代碼 set_time_limit(0);//程序執(zhí)行時間無限制 $sleep_time = 5;//多長時間執(zhí)行一次 $switch = include 'switch.php'; while($switch){ $switch = include 'switch.php'; $fp = fopen('test.txt','a+'); fwrite($fp,"這是一個php博客:phpddt.com $switch \n"); fclose($fp); sleep($sleep_time); } exit(); ?>
這個腳本只是測試可行,具體效率應該不高,對于lamp,你完全可以使用crontab 來實現(xiàn)。
再補充一段小代碼:
ignore_user_abort();//關(guān)掉瀏覽器,PHP腳本也可以繼續(xù)執(zhí)行. set_time_limit(0);// 通過set_time_limit(0)可以讓程序無限制的執(zhí)行下去 $interval=60*30;// 每隔半小時運行 do{ //這里是你要執(zhí)行的代碼 sleep($interval);// 等待5分鐘 }while(true);
關(guān)于PHP定時執(zhí)行任務的實現(xiàn)就為大家介紹這么多,之后還有相關(guān)文章為大家分享,不要錯過。
相關(guān)文章
php提示Failed to write session data錯誤的解決方法
這篇文章主要介紹了php提示Failed to write session data錯誤的解決方法,較為詳細的分析了session寫入錯誤的原因與解決方法,并附帶說明了php的工作機制,非常具有實用價值,需要的朋友可以參考下2014-12-12PHP檢查文件是否存在,不存在自動創(chuàng)建及讀取文件內(nèi)容操作示例
這篇文章主要介紹了PHP檢查文件是否存在,不存在自動創(chuàng)建及讀取文件內(nèi)容操作,結(jié)合實例形式分析了PHP針對文件的檢測、創(chuàng)建、遍歷、讀取等相關(guān)操作技巧,需要的朋友可以參考下2020-01-01PHP Class self 與 static 異同與使用詳解
這篇文章主要介紹了PHP中 Class self 與 static 有什么區(qū)別,都怎么用,需要的朋友們下面隨著小編來一起學習學習吧2021-09-09詳解php 使用Callable Closure強制指定回調(diào)類型
這篇文章主要介紹了詳解php 使用Callable Closure強制指定回調(diào)類型的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-10-10PHP訪問MYSQL數(shù)據(jù)庫封裝類(附函數(shù)說明)
MYSQL 數(shù)據(jù)訪問方式,php4支持以mysql_開頭的過程訪問方式,php5開始支持以mysqli_開頭的過程和mysqli面向?qū)ο笤L問方式,本封裝類以mysql_封裝2010-12-12PHP使用in_array函數(shù)檢查數(shù)組中是否存在某個值
這篇文章主要介紹了PHP使用in_array函數(shù)檢查數(shù)組中是否存在某個值,較為詳細的分析了in_array函數(shù)的功能、定義及相關(guān)的使用技巧與注意事項,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03