首頁 > 後端開發 > php教程 > yii2中commands模式以及配置下的crontab定時任務

yii2中commands模式以及配置下的crontab定時任務

炎欲天舞
發布: 2023-03-15 12:46:02
原創
2236 人瀏覽過

一,偵測環境:

  首先我們切換到專案根目錄,yii2正常安裝的話有一個commands資料夾,裡面有一個範例檔案HelloController.php  

<?php
namespace app\commands;use yii\console\Controller;class HelloController extends Controller
{    public function actionIndex($message = &#39;hello world&#39;)
    {        echo $message . "\n";
    }
}
登入後複製

  切到專案根目錄,命令列輸出  php yii hello,輸出hello world 說明環境正常

#二,書寫程式碼:

    可以在commands資料夾新控制器檔案,繼承#yii\console \Controller;定義類別方法,actionIndex方法一般為預設路由,

  調試時在項目根目錄輸入php yii 加上控制器名字(小寫)/路由(index的話可省略)

三,linux定時任務crontab.

  1關於crontab:

#    linux環境下,crontab -l顯示定時任務,crontab -e編輯定時任務

  2基本語法

    基本格式:
    *  *  *  *  * *  * [  第1列表示分鐘1~59 每分鐘用*或*/1表示
    第2列表示小時1~23(0表示0點)

    第3列表示日期1~31

     第3列表示日期1~31

    第4列表示月份1~12

    第5列識別號星期0~6(0表示星期日)
    第6列要執行的命令

  3用法範例

     #30

 

21

 

* * * /usr/local/etc/rc.d/lighttpd restart     #上面的範例表示每晚的21:30重啟apache。

 

    45

 

4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart

    #上面的範例表示每月1、10、22日的4 : 45重啟apache。      10 1 * * 6# ,0 /usr/local/etc/

rc

.d/lighttpd 

restart

###################################################################################### ######################################    #上面的範例表示每週六、週日的1 : 10重啟apache。 ######### ###

    0,30 18-23 * *  * /usr/local/etc/rc.d/lighttpd restart

#    #上面的範例表示在每天18 : 00至23 : 00之間每隔30分鐘重啟apache。

 

    0 23 * * 6#/usr/local/etc/rc.d/lighttpd restart

    #上面的範例表示每星期六的11 : 00 pm重啟apache。

     0 */1 #* * * /usr/local/etc/rc.d/lighttpd restart


#########################    #每一小時重啟apache######## #####四,linux定時任務crontab執行commands下控制器php檔案內容#############  依第三步驟所寫,後面加上php yii + 專案根路徑+ 路由(控制器名稱/方法名稱)即可##########

以上是yii2中commands模式以及配置下的crontab定時任務的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板