slim框架添加cli 支持編寫腳本

背景

前些日子有個小項目要寫,用慣了laravelthinkphp這種比較大的框架, 原本想用熟悉的框架寫的,但想一想不須要這麼重的框架, 因而便想到用slim一個微框架
官網: slimframeworkphp

後面有個需求須要寫腳本, 但slim是個微框架,自己沒有集成cli的支持的,因而就想着本身動手 豐衣足食html

解決

嗯... 我第一個想到的就是laravel中使用的symfony/console 畢竟好用, 因而說作就作。laravel

    1. 安裝symfony/console
      composer require symfony/console v4.4.9
      這裏指定版本是由於我本地php是7.1有版本限制, 就沒有使 用高版本的symfony/console
    2. 集成
      首先我把框架的容器設置, env等等都集成到bootstrap目錄下的app.php文件中
      在這裏插入圖片描述
      其次我在bin目錄下建立了個console的文件,裏面引入了slim框架的容器和實例化並加載了容器內設置好的settings裏的commands
      在這裏插入圖片描述
    1. 使用
      而後我在項目下建了個console的目錄,composer.json里加入psr-4的加載項, 最後執行composer dump-autoload
      在這裏插入圖片描述
      而後我建了個Console/TestCommand
      在這裏插入圖片描述
      固然類的名字是要寫到容器內的settingcommands數組內
      在這裏插入圖片描述

    而後執行測試下
    在這裏插入圖片描述thinkphp

    嗯 搞定json

    總結

    1. 主要使用了symfony/console 使用方法能夠見我上面貼的文檔地址
    2. 主要就是爲了讓symfony/console集成到框架中, 而且能拿到slim的容器,這樣咱們才能在cli中使用slim容器中你集成的衆多組件
    相關文章
    相關標籤/搜索