PHP定時執行任務

似水的流年發表於2017-12-29

PHP定時執行任務有兩種方式:

一、Linux 伺服器
Linux原生支援crontab,所以可以利用這一功能做定時任務

步驟:

1、編輯crontab檔案:
Linux:crontab -e

2、輸入程式碼:
0 0 * * 6 /etc/init.d/httpd restart && /etc/init.d/mysqld restart
 程式碼解釋:每週六0點自動重啟apache和mysql,第一項(前面5位)是時間設定,具體格式百度之,不贅述,下同;
 第二項是apache所在目錄,
 第三項上執行具體方法,
 後面的&&可以連寫,也可以刪除&&後,換行,即也可以這麼寫:
0 0 * * 6 /etc/init.d/httpd restart
0 0 * * 6 /etc/init.d/mysqld restart

0 9 * * * /usr/bin/curl http://www.website.com/Index/test
 程式碼解釋:每天上午9點自動執行一次http://www.website.com/Index/test方法
 第二項代表curl所在目錄,
 第三項代表所要執行的url
 (若要執行PHP檔案,與此格式類似,具體百度之。。)

esc
:wq 儲存

 

二、Windows伺服器:
Windows伺服器可以利用系統的計劃任務實現

步驟:

1、建立一個bat批處理檔案,如:
D:xamppphpphp.exe -q D:xampphtdocs est.php
儲存為test.bat,第一項為php.exe所在目錄,第二項為需要執行的php檔案路徑

2、test.php檔案寫入:
<?php
file_put_contents(`test.txt`,date(`Y-m-d H:i:s`).” success!
“,FILE_APPEND);
?>
此僅為測試用,具體程式碼可自行編寫(本例是隻要執行test.bat,就呼叫test.php,往test.txt裡面寫入一段字串)

3、設定系統計劃任務,定時執行test.bat

 

O(∩_∩)O哈哈~ 大功告成!


相關文章