首页  >  文章  >  后端开发  >  laravel - php artisan --queue 参数报错!

laravel - php artisan --queue 参数报错!

WBOY
WBOY原创
2016-12-01 01:27:441630浏览

报错信息:
laravel - php artisan  --queue 参数报错!

回复内容:

报错信息:
laravel - php artisan  --queue 参数报错!

make是创建php文件的命令,你截图里的make:command是创建一个命令行任务,比如你创建了一个命令test,就可以在命令行执行 php artisan test 来执行这个 test 任务。

用于队列执行的任务一般用 "Job" ,通过 php artisan make:job 创建一个job类,然后在代码中用 dispatch(new FooJob) 来执行这个任务。如果需要这个job在队列(queue)中执行(异步),job类实现ShouldQueue即可。把job加到queue中后,这个队列queue本身也是要启动的,才能保证加进去的job可以按计划执行,启动队列用php artisan queue:work命令行。官方文档对这些都说的很清楚,多看几遍多试试就弄通了。
https://laravel.com/docs/5.3/...
中文:https://laravel-china.org/doc...

创建事件(event)监听者(listener)文件时可以加参数 queued 用于标记这个listener需要在队列中异步执行,比如 php artisan make:listener Foobar --queued, 在EventServiceProvider中定义了事件event与listener的对应关系。在代码中使用 event() 函数触发一个事件,框架会根据EventServiceProvider中定义的监听者来调用其代码,如果监听者是队列的,就把它加入到队列中。

Laravel中的事件、任务、监听、通知都与队列有关系。但是command(命令行)跟队列没关系,command可以理解为是跟在php artisan后面执行的一个命令行工具。命令行工具可以加入系统的计划任务cron用于按照计划时间来执行,比如每天凌晨3点重启服务器。Laravel提供了一种便捷的方法实现系统的cron计划任务,在app/Console/Kernel.php中的schedule方法中写即可。

不存在--queued选项,你是要做啥操作

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn