命令列 crontab 呼叫 Yii 控制器

2021-06-21 22:10:23 字數 680 閱讀 4401

今天 遇到乙個需求, 需要crontab呼叫yii的控制器, 雖說yii有自己的控制台類,可得先配置config/console.php檔案,然後再寫乙個command類,並且不能使用控制器裡的方法。  那如何盡量用最小的改動來實現呢?   

由於控制台輸入的引數會儲存在$_server['argv'] 中, 並且一般框架都是分析url,得到控制器名和action名,再呼叫相對應的控制器類和類中的方法。 根據這種思路, 我只需要修改入口檔案 index.php, 加上三行**即可搞定。

<?php 

$yii=dirname(__file__).'/framework/yii.php';

$config=dirname(__file__).'/protected/config/main.php';

defined('yii_debug') or define('yii_debug',true);

require_once($yii);

//加入如下**

if($_server['argv'])

//end

然後進入專案根目錄,輸入:

d:\wamp\xampp\php\php.exe  index.php  site  index

site 為控制器, index為action名,  

yii 命令列執行

1.建立匯入命令類protected commands importcommand.php檔案 class importcommand extends cconsolecommand 2.修改配置檔案protected config console.php 主要是連線資料庫,和main.php配置是...

LUA 命令列呼叫

在lua中呼叫命令列的方式主要有兩種os.execute io.popen os.execute可以執行dos命令,但是返回的是系統狀態碼,預設輸出.例如 os.execute mkdir dir 可在當前目錄建立乙個名為 dir 的資料夾io.popen 也可以執行dos命令,但是返回乙個檔案。l...

vscode命令列呼叫

對於經常使用macos terminal的使用者來說,希望直接命令呼叫vscode軟體開啟檔案或資料夾,我們只需如下操作即可 shift command p搜尋 shell 安裝好之後系統就可以使用code folder or file直接開啟檔案或資料夾了 當前已經開啟的終端,關閉重開 as4k ...