百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

PHP Laravel定时任务Schedule

moboyou 2025-06-29 08:01 3 浏览

前提:本文方法是利用Linux的crontab定时任务来协助实现Laravel调度(Mac也一样)。

一、首先添加Crontab定时任务,这里只做简单介绍:

用命令crontab -e 添加如下内容

* * * * * /usr/local/bin/php /usr/local/var/www/projectName/artisan schedule:run >> /dev/null 2>&1

如图:

上面命令Crontab会每分钟去调Laravel的schedule命令,然后Laravel判断执行任务。

注意:要注意php和artisan的目录,which php可以查看php目录

***** 你的命令

另外上面的命令前面的5个*分别代表分钟、小时、天、月、星期。

  • 分钟:0-59的整数,默认*和*/1 代表1分钟。
  • 小时:0-23的整数。
  • 天:1-31的整数。
  • 月:1-12的整数。
  • 星期:0-7的整数,0和7都代表星期日。
  • crontab -l 可以列出当前的定时任务。

二、添加Laravel调度任务:

1、在App\Console\Kernel类中定义你的调度任务:

<?phpnamespace App\Console;use Illuminate\Console\Scheduling\Schedule;use Laravel\Lumen\Console\Kernel as ConsoleKernel;use Log;class Kernel extends ConsoleKernel{    /**     * The Artisan commands provided by your application.     * 定义Artisan命令     * @var array     */    protected $commands = [                \App\Console\Commands\test::class,    ];    /**     * Define the application's command schedule.     * 定义调度任务     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule     * @return void     */    protected function schedule(Schedule $schedule){        //方法一://            $schedule->call(function () {//                Log::info('任务调度');//            })->everyMinute();        //方法二:        $schedule->command('test')->everyMinute();    }}

上面举例了两种实现方法,方法一是用闭包,方法二是用Artisan命令实现的。

调度的时间可以有多种:

->cron(‘* * * * *’); 在自定义Cron调度上运行任务->everyMinute(); 每分钟运行一次任务->everyFiveMinutes(); 每五分钟运行一次任务->everyTenMinutes(); 每十分钟运行一次任务->everyThirtyMinutes(); 每三十分钟运行一次任务->hourly(); 每小时运行一次任务->daily(); 每天凌晨零点运行任务->dailyAt(‘13:00’); 每天13:00运行任务->twiceDaily(1, 13); 每天1:00 & 13:00运行任务->weekly(); 每周运行一次任务->monthly(); 每月运行一次任务
还有一下额外的方法,请参考:http://laravelacademy.org/post/235.html

下面继续方法二的操作:

三、定义Artisan命令的方法:

<?php namespace App\Console\Commands;use Illuminate\Console\Command;use Log;class test extends Command {    /**     * The console command name.     *     * @var string     */    protected $name = 'test:putcache';    /**     * The console command description.     *     * @var string     */    protected $description = 'test controller';    /**     * Execute the console command.     *     * @return mixed     */    public function handle(){            //这里做任务的具体处理,可以用模型            Log::info('任务调度'.time());    }}

好了,以上就可以执行定时任务了,有个小技巧如果上面的任务没执行可以用命令php artisan list 可以打印出一些错误信息。

相关推荐

php宝塔搭建部署实战SDCMS蓝色通用宽屏企业网站源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的SDCMS蓝色通用宽屏企业网站源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5.7+...

PHP Laravel定时任务Schedule

前提:本文方法是利用Linux的crontab定时任务来协助实现Laravel调度(Mac也一样)。一、首先添加Crontab定时任务,这里只做简单介绍:用命令crontab-e添加如下内容**...

PHP函数大全:从Array到Zip,你需要了解的所有函数

PHP函数大全:从Array到Zip,你需要了解的所有函数在PHP开发中,函数是非常重要的工具。它们提供了各种功能和操作,帮助我们更高效地处理数据和实现各种功能。在本文中,我们将介绍PHP中一些常用的...

php宝塔搭建部署实战SDCMS蓝色系列包装行业网站源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的SDCMS蓝色系列包装行业网站源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5.7+...

php宝塔部署实战月老盲盒H5交友盲盒网站源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的月老盲盒H5交友盲盒网站源码。技术架构PHP7.2+nginx+mysql5.7+JS+CSS+HTMLcn...

php宝塔部署实战OneKeyAdmin插件化管理系统源码

大家好啊,我是测评君,欢迎来到web测评。有个朋友发消息问我,能不能录制一期开源OneKeyAdmin插件化CMS管理系统的搭建视频教程,看了一下,搭建的方式还是很简单的,本期给大家分享一下怎么在宝塔...

php宝塔搭建部署实战海洋cms视频内容管理系统源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的海洋cms视频内容管理系统源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5.7+J...

php宝塔搭建部署网盘目录搜索系统thinkphp源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的网盘目录搜索系统thinkphp源码,这也是一个朋友之前分享给我的,说不会搭建,看了一下,还是很简单的,感兴趣的朋友可以自行下载...

php宝塔搭建部署实战PESCMSTEAM团队任务管理系统源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的PESCMSTEAM团队任务管理系统源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5....

php宝塔搭建部署实战科技创业园区网站源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的科技创业园区网站源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5.7+JS+C...

在CentOS7系统源码安装Nginx+MySQL+PHP+Go

以下安装说明仅供参考,请根据实际情况修改配置,进行软件编译安装软件安装也可以参考阿里云/腾讯云的建站教程:https://help.aliyun.com/zh/ecs/use-cases/build-...

2021最新湖北电视台节目源PHP代理源码

强调下这需要要PHP服务器来运行代码,奈何世人只爱鱼,不爱渔。自己动手对大部分人还是一个坎。id频道439湖北美嘉购物438湖北垄上437湖北教育436湖北生活435湖北影视434湖...

教你搭建自己的问答系统,在java环境上运行php项目

最近公司需要一款问答系统,方便我们平时在这套系统上面积累经验于是在网上找到这款Tipask问答系统。Tipask问答系统是一款开放源码的PHP仿百度问答系统。以国人的使用习惯为设计理念,采用MVC构架...

php宝塔搭建实战部署响应式房产置业公司网站php源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的响应式房产置业公司网站模板php源码,也是一个朋友很早之前分享给我的,说不会搭建,让我帮忙录制一期教程,趁着今天有空,简单的录制...

php宝塔搭建部署实战易优企业官网系统源码

大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的易优企业官网系统源码,感兴趣的朋友可以自行下载学习。技术架构PHP7.2+nginx+mysql5.7+JS+C...