今天在 Laravel News 网站无意间看到「Laravel Zero」,主要被这个 Slogan 吸引住了。
像写 Laravel 代码那样优雅地写 console application;而且比 Laravel 和 Lumen 简单,极易上手。
下面我们开始写个简单的 demo 入手:
创建项目
add note
在项目路径下 app/Commands/AddCommand.php,
修改 $signature 值,命令值为:add,一个参数名为:note;
具体参考:https://laravel.com/docs/5.6/artisan#defining-input-expectations
修改 $description,描述每个 Command 含义;
最后在 handle() 函数,写入执行 command 的代码
具体代码简单,直接看代码:
利用命令,可以看到一些常用指令,同时可以看到已经增加了一个 command:
测试一下,看效果:
发送的 note 信息都保存到 storage/notes 文件里:
发钉钉消息
简简单单几条代码,就可以做一个命令行应用,确实好用;
接下来,我们开始加点料。结合之前的钉钉发消息插件 (fanly/msgrobot)。
我的出发点是:当我们在开会时,如果临时有消息和通知,就可以不需要任何钉钉客户端,利用「命令行」把内容推送到工作群里,效果会比较「极客」。
同样的,新建一个 DingDingCommand:
安装 fanly/msgrobot 插件:
看代码:
试试发一个消息:
因为「Laravel Zero」只用了 Laravel 核心的几个库,所以在使用第三方插件时,有可能会报错,如找不到 Class log 之类的:
这时候是缺什么补什么即可:
同时,还需要补上 logging.php 配置文件
注:这里推荐利用 Laravel Zero 官网提供的方法,一步到位:
最后我们看看执行效果:
打包
如果打包时,提示需要设置 readonly,直接按照提示修改配置文件即可
打包完后,就可以直接使用该钉钉发送工具了:
总结
因为时间关系,没有尝试使用 Laravel Zero 的其它功能,我相信只要看看官网的介绍,使用起来应该游刃有余,总之一句话:够简单,够轻量级。
如果你觉得 Laravel Zero 还不错,你也可以试试哦,也可以加深对 Laravel 的理解~~~
参考
官网 http://laravel-zero.com/#/
Laravel Zero 5.6 Is Now Available https://medium.com/@nunomaduro/laravel-zero-5-6-is-now-available-3c83a6dc267f
「完」coding01 期待您继续关注
领取专属 10元无门槛券
私享最新 技术干货