ThinkPHP實現定時任務

項目服務端框架我選用的是ThinkPHP,因爲策劃案中有需求要定時刷新指定數據,因此在windows平臺我使用微軟的計劃任務調用bat腳原本執行下面的命令來完成php

php index.php  /Home/cli

即便用PHP的CLI模式調用ThinkPHP的入口文件,而後再傳入指定控制器完成相應的數據處理。/Home/cli 爲我新增的名爲CliController的控制器,在類中index方法調用相應處理數據的模塊便可。linux

在linux平臺下使用的crontab來實現定時任務,經過crontab -e 新增一條命令,具體寫法可問問度娘,給出個人配置截圖:shell

效果就是天天早上6點執行cli_timer.sh腳本,腳本內容以下:windows

sh -c  "cd /mnt/share/WebServer;php index.php /Home/Cli;"

這裏須要說明的是在linux下若是cli_timer.sh腳本中只包含下面命令框架

php index.php  /Home/Cli ;

是會報路徑包含錯誤的,因此這裏在腳本中將當前工做路徑切換到index.php腳本放置的目錄,這樣就能正常使用了。spa

經過這種方式在Windows和Linux下都能完成定時任務了,本人文筆不太好,寫的有些隨性了,望見諒,有疑問的同窗可留貼給我。.net

相關文章
相關標籤/搜索