背景
前些日子有個小項目要寫,用慣了laravel和thinkphp這種比較大的框架, 本來想用熟悉的框架寫的,但想想不需要這麼重的框架, 於是便想到用slim一個微框架
官網: slimframework
後面有個需求需要寫腳本, 但slim是個微框架,本身沒有集成cli的支持的,於是就想着自己動手 豐衣足食
解決
嗯... 我第一個想到的就是laravel中使用的symfony/console 畢竟好用, 於是説做就做。
- 安裝
symfony/console
composer require symfony/console v4.4.9
這裏指定版本是因為我本地php是7.1有版本限制, 就沒有使 用高版本的symfony/console - 集成
首先我把框架的容器設置,env等等都集成到bootstrap目錄下的app.php文件中
其次我在bin目錄下創建了個console的文件,裏面引入了slim框架的容器和實例化並加載了容器內設置好的settings裏的commands
- 使用
然後我在項目下建了個console的目錄,composer.json里加入psr-4的加載項, 最後執行composer dump-autoload
然後我建了個Console/TestCommand類
當然類的名字是要寫到容器內的setting的commands數組內
然後執行測試下
嗯 搞定
總結
- 主要使用了
symfony/console使用方法可以見我上面貼的文檔地址 - 主要就是為了讓
symfony/console集成到框架中, 並且能拿到slim的容器,這樣我們才能在cli中使用slim容器中你集成的眾多組件