背景
前些日子有个小项目要写,用惯了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容器中你集成的众多组件