ThinkPHP5.1 CLI命令行模式

今天在改進老項目的時候遇到了需要使用ThinkPHP的CLI模式,也就是命令行模式去運行PHP代碼。

普通的PHP使用命令行模式這個就不用我多說了~

其實ThinkPHP5.1關於這個命令行模式官方手冊也有介紹。當然,還是記錄一下,以防後面忘記了又要翻文檔。

當前TP5.1版本是5.1.38,關於查看TP版本,在CMD下輸入php think version即可查看


如果輸入PHP命令,CMD提示 PHP 不是內部或外部命令也不是可運行的程序,這時候需要設置一下PHP的環境變量,例如我當前的環境是PHPStudy 8.0 和 Windows 10


首先PHP的安裝目錄下有PHP.EXE文件

 

那麼就將當前目錄地址

D:\soft\phpstudy\Extensions\php\php7.3.4nts

寫入到環境變量中去,桌面上右鍵-此電腦-屬性-高級系統設置-環境變量-找到path-編輯-將上面的目錄寫入。

OK,重啓一下CMD,就可以愉快的操作PHP了。

 

接下來是ThinkPHP的操作

首先在application目錄下創建common目錄,common目錄下創建command目錄,在command目錄下創建一個test.php(注意大小寫!)

test.php的內容如下

<?php
/**
 * Created by 九城.
 * Author: 九城
 * QQ : 940993208
 *
 * Date: 2019/9/18
 * Time: 14:34
 */

namespace app\common\command;


use think\console\Command;
use think\console\Input;
use think\console\Output;

class test extends Command
{
    protected function configure()
    {
        $this->setName('test')
            ->setDescription('test tp5 cli mode');
    }

    protected function execute(Input $input, Output $output)
    {

        $output->writeln("hello test!");


    }
}

然後在command.php文件寫入當前test的命名空間

<?php


return [
    'test' => 'app\common\command\test',
];

接着在cmd下輸入命令

php think

接着輸入

php think test

至此就可以愉快的使用命令行模式去使用ThinkPHP5.1

業務代碼可以寫在execute方法裏。例如循環的去讀取Redis,循環生成等,不過這種場景最好還是Swoole或者Workman來處理比較好。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章