溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

commands模式如何在yii2中實現(xiàn)

發(fā)布時間:2020-12-09 15:51:57 來源:億速云 閱讀:236 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章為大家展示了commands模式如何在yii2中實現(xiàn) ,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

一 ,檢測環(huán)境:

首先我們切換到項目根目錄,yii2正常安裝的話有一個commands文件夾,里面有一個示例文件HelloController.php  

<&#63;php
namespace app\commands;
use yii\console\Controller;
class HelloController extends Controller
{
 public function actionIndex($message = 'hello world')
 {
  echo $message . "\n";
 }
}

切到項目根目錄,命令行輸出  php yii hello,輸出hello world 說明環(huán)境正常

二,書寫代碼:

可以在commands文件夾新建控制器文件,繼承yii\console\Controller;定義類方法,actionIndex方法一般為默認(rèn)路由,

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

三,linux定時任務(wù)crontab.

1關(guān)于crontab:

在linux環(huán)境下,crontab -l顯示定時任務(wù),crontab -e編輯定時任務(wù)

2基本語法

基本格式 :

*****command
分 時 日 月 周 命令

第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標(biāo)識號星期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定時任務(wù)crontab執(zhí)行commands下控制器php文件內(nèi)容

按第三步所寫,后面加上 php yii + 項目根路徑 + 路由(控制器名/方法名)即可

上述內(nèi)容就是commands模式如何在yii2中實現(xiàn) ,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI