如何使用Linux的Crontab定時執(zhí)行PHP腳本的方法
更新時間:2011年12月19日 01:18:08 作者:
我們的PHP程序有時候需要定時執(zhí)行,我們可以使用ignore_user_abort函數(shù)或是在頁面放置js讓用戶幫我們實現(xiàn)。但這兩種方法都不太可靠,不穩(wěn)定。我們可以借助Linux的Crontab工具來穩(wěn)定可靠地觸發(fā)PHP執(zhí)行任務(wù)
下面介紹Crontab的兩種方法。
一、在Crontab中使用PHP執(zhí)行腳本
就像在Crontab中調(diào)用普通的shell腳本一樣(具體Crontab用法),使用PHP程序來調(diào)用PHP腳本。
每一小時執(zhí)行myscript.php如下:
# crontab -e
00 * * * * /usr/local/bin/php /home/john/myscript.php
/usr/local/bin/php為PHP程序的路徑。
二、在Crontab中使用URL執(zhí)行腳本
如果你的PHP腳本可以通過URL觸發(fā),你可以使用lynx或curl或wget來配置你的Crontab。
下面的例子是使用Lynx文本瀏覽器訪問URL來每小時執(zhí)行PHP腳本。Lynx文本瀏覽器默認(rèn)使用對話方式打開URL。但是,像下面的,我們在lynx命令行中使用-dump選項來把URL的輸出轉(zhuǎn)換來標(biāo)準(zhǔn)輸出。
00 * * * * lynx -dump http://www.dhdzp.com/myscript.php
下面的例子是使用CURL訪問URL來每5分執(zhí)行PHP腳本。Curl默認(rèn)在標(biāo)準(zhǔn)輸出顯示輸出。使用”curl -o”選項,你也可以把腳本的輸出轉(zhuǎn)儲到臨時文件。
*/5 * * * * /usr/bin/curl -o temp.txt http://www.dhdzp.com/myscript.php
下面的例子是使用WGET訪問URL來每10分執(zhí)行PHP腳本。-q選項表示安靜模式?!?O temp.txt”表示輸出會發(fā)送到臨時文件。
*/10 * * * * /usr/bin/wget -q -O temp.txt http://www.dhdzp.com/myscript.php
一、在Crontab中使用PHP執(zhí)行腳本
就像在Crontab中調(diào)用普通的shell腳本一樣(具體Crontab用法),使用PHP程序來調(diào)用PHP腳本。
每一小時執(zhí)行myscript.php如下:
復(fù)制代碼 代碼如下:
# crontab -e
00 * * * * /usr/local/bin/php /home/john/myscript.php
/usr/local/bin/php為PHP程序的路徑。
二、在Crontab中使用URL執(zhí)行腳本
如果你的PHP腳本可以通過URL觸發(fā),你可以使用lynx或curl或wget來配置你的Crontab。
下面的例子是使用Lynx文本瀏覽器訪問URL來每小時執(zhí)行PHP腳本。Lynx文本瀏覽器默認(rèn)使用對話方式打開URL。但是,像下面的,我們在lynx命令行中使用-dump選項來把URL的輸出轉(zhuǎn)換來標(biāo)準(zhǔn)輸出。
復(fù)制代碼 代碼如下:
00 * * * * lynx -dump http://www.dhdzp.com/myscript.php
下面的例子是使用CURL訪問URL來每5分執(zhí)行PHP腳本。Curl默認(rèn)在標(biāo)準(zhǔn)輸出顯示輸出。使用”curl -o”選項,你也可以把腳本的輸出轉(zhuǎn)儲到臨時文件。
復(fù)制代碼 代碼如下:
*/5 * * * * /usr/bin/curl -o temp.txt http://www.dhdzp.com/myscript.php
下面的例子是使用WGET訪問URL來每10分執(zhí)行PHP腳本。-q選項表示安靜模式?!?O temp.txt”表示輸出會發(fā)送到臨時文件。
復(fù)制代碼 代碼如下:
*/10 * * * * /usr/bin/wget -q -O temp.txt http://www.dhdzp.com/myscript.php
您可能感興趣的文章:
- Linux之crontab定時執(zhí)行腳本方式
- django-crontab 定時執(zhí)行任務(wù)方法的實現(xiàn)
- Linux crontab定時執(zhí)行Shell腳本需要執(zhí)行特定的命令時解決思路
- Linux下的crontab定時執(zhí)行任務(wù)命令詳解
- Linux定時執(zhí)行任務(wù)at和crontab命令詳解
- Ubuntu系統(tǒng)下用Crontab命令定時執(zhí)行PHP文件詳解
- Centos 7下利用crontab定時執(zhí)行任務(wù)詳解
- linux下定時執(zhí)行任務(wù)的方法及crontab 用法說明(收集整理)
- crontab設(shè)置每分鐘、每小時、每天、每周、每月、每年定時執(zhí)行的腳本
相關(guān)文章
使用NetBeans + Xdebug調(diào)試PHP程序的方法
前些天發(fā)現(xiàn)通過Notepad++的DBGP插件結(jié)合PHP的xdebug擴(kuò)展可以實現(xiàn)PHP文件調(diào)試,同時,介紹說包含了單步調(diào)試、監(jiān)視變量還有跨文件調(diào)試。2011-04-04
PHP實現(xiàn)實時生成并下載超大數(shù)據(jù)量的EXCEL文件詳解
EXCEL文件的處理是我們在日常工作中經(jīng)常會遇到的,這篇文章主要給大家介紹了關(guān)于利用PHP如何實現(xiàn)實時生成并下載超大數(shù)據(jù)量的EXCEL文件,通過文中介紹的這個方法對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考借鑒,下面來一起看看吧。2017-10-10
PHP中spl_autoload_register函數(shù)的用法總結(jié)
本文是對PHP中spl_autoload_register函數(shù)的用法進(jìn)行了詳細(xì)的總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
php smarty 二級分類代碼和模版循環(huán)例子
分享下最近寫的smarty模版引擎輸出二級分類代碼,主要是靠二維數(shù)組進(jìn)行控制輸出。2011-06-06
php實現(xiàn)refresh刷新頁面批量導(dǎo)入數(shù)據(jù)的方法
這篇文章主要介紹了php實現(xiàn)refresh刷新頁面批量導(dǎo)入數(shù)據(jù)的方法,借鑒了dedecms批量生成html的原理,采用refresh代替js跳轉(zhuǎn)來實現(xiàn),非常具有實用價值,需要的朋友可以參考下2014-12-12
php中file_get_content 和curl以及fopen 效率分析
關(guān)于file_get_content 和curl以及fopen 的效率問題,小編比較傾向于使用curl來訪問遠(yuǎn)程url。Php有curl模塊擴(kuò)展,功能很是強(qiáng)大。沒事可以研究一下。2014-09-09

