详解如何使用laravel的任务调度(定时执行任务)

下面由laravel教程栏目给大家介绍使用laravel的任务调度(定时执行任务),希望对需要的朋友有所帮助!

详解如何使用laravel的任务调度(定时执行任务)

laravel中有一个很强大上的功能,只需要在服务器上添加一个cron条目,就可以定时执行所有的laravel任务。

现在有如下数据表:

详解如何使用laravel的任务调度(定时执行任务)

我想让cron表中的cron字段的值每分钟增加1,那么我需要如下步骤:

1、在App\Console\Kernel.php中编写laravel代码

protected function schedule(Schedule $schedule){    $schedule->call(function () {                    DB::table('cron')->increment('cron');                })->everyMinute(); }

2、在服务的/var/spool/cron/root文件中添加代码

 注意:这里最好使用vim编辑器编辑文件,如果使用winscp编辑文件,会出现不执行任务的问题。

使用vim教程链接:http://www.cnblogs.com/zzdylan/p/5941706.html

在命令行输入

AppMall应用商店 AppMall应用商店

AI应用商店,提供即时交付、按需付费的人工智能应用服务

AppMall应用商店 56 查看详情 AppMall应用商店

crontab -e

添加如下代码

* * * * * /usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1

在命令行输入

crontab -u root -l

详解如何使用laravel的任务调度(定时执行任务)

不需要重启cron服务,因为系统每分钟都会读一遍/var/spool/cron目录下的文件。

如果发现按照如下配置还是不能执行的话,可以用以下方法排除问题:

看一下命令有没有使用绝对路径,比如这里使用/usr/local/php/bin/php而不是php,使用/data/wwwroot/test/artisan而不是artisan。

如果已经使用了绝对路径还是不执行,那就直接在命令行输入/usr/local/php/bin/php /data/wwwroot/test/artisan schedule:run 1>> /dev/null 2>&1,看看有没有执行,如果没有执行,那就是laravel代码的问题,如果执行了说明是环境变量的问题,好好检查路径的问题。如果不知道php在什么地方,在命令行输入which php,就会提示你php安装在什么位置了。

更多编程相关知识,请访问:编程教学!!

以上就是详解如何使用laravel的任务调度(定时执行任务)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/485302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
xp系统mac地址怎么查
上一篇 2025年11月8日 13:09:11
网页商城APP软件安全可靠么?
下一篇 2025年11月8日 13:09:16

相关推荐

发表回复

登录后才能评论
关注微信