Laravel实现定时任务的示例代码


Posted in PHP onAugust 10, 2017

简介

定时任务是后端开发过程中一项十分常见的需求,常出现在数据统计、垃圾信息清理等场景中。Laravel 提供了一整套的定时任务工具,让我们只需要专注地完成逻辑,剩下的基础工作将由它来承担。

基本用法

生成命令

php artisan make:command AreYouOK

5.2 及之前的版本,此命令为 `php artisan make:console xxx`

编辑命令

编辑 `app/Console/Commands/AreYouOK.php` 文件,修改如下几处:

... ...
protected $signature = 'areyou:ok'; // 命令名称
protected $description = '雷军,科技圈最会唱歌的男人'; // 命令描述,没什么用

public function __construct()
{
  parent::__construct();
  // 初始化代码写到这里,也没什么用
}
public function handle()
{
  // 功能代码写到这里
}

注册命令

编辑 `app/Console/Kernel.php` 文件,将新生成的类进行注册:

protected $commands = [
  \App\Console\Commands\AreYouOK::class,
];

编写调用逻辑:

protected function schedule(Schedule $schedule)
{
  $schedule->command('areyou:ok')
       ->timezone('Asia/Shanghai')
       ->everyMinute();
}

上面的逻辑是每分钟调用一次。Laravel 提供了从一分钟到一年的各种长度的时间函数,直接调用即可。

把这个 Laravel 项目注册到系统的 cron 里

编辑 `/etc/crontab` 文件,加入如下代码:

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

上面一行中的 `/var/www/xxxlaravel` 需要改为实际的路径。

fire

重启 cron 激活此功能:`systemctl restart crond.service`,搞定!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php生成SessionID和图片校验码的思路和实现代码
Mar 10 PHP
Ha0k 0.3 PHP 网页木马修改版
Oct 11 PHP
php 调用远程url的六种方法小结
Nov 02 PHP
支持数组的ADDSLASHES的php函数
Feb 16 PHP
UCenter 批量添加用户的php代码
Jul 17 PHP
php适配器模式介绍
Aug 14 PHP
PHP采集静态页面并把页面css,img,js保存的方法
Dec 23 PHP
PHP实现加密的几种方式介绍
Feb 22 PHP
PHP实现根据时间戳获取周几的方法
Feb 26 PHP
Symfony2中被遗弃的getRequest()方法分析
Mar 17 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
Jul 06 PHP
php+lottery.js实现九宫格抽奖功能
Jul 21 PHP
PHP编程实现计算抽奖概率算法完整实例
Aug 09 #PHP
PHP实现将标点符号正则替换为空格的方法
Aug 09 #PHP
php实现的redis缓存类定义与使用方法示例
Aug 09 #PHP
PHP编程实现脚本异步执行的方法
Aug 09 #PHP
PHP并发查询MySQL的实例代码
Aug 09 #PHP
Yii2框架中使用PHPExcel导出Excel文件的示例
Aug 09 #PHP
PHP实现更改hosts文件的方法示例
Aug 08 #PHP
You might like
FCKeditor添加自定义按钮
2008/03/27 PHP
PHP获取数组中某元素的位置及array_keys函数应用
2013/01/29 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
javascript之水平横向滚动歌词同步的应用
2007/05/07 Javascript
JS图片浏览组件PhotoLook的公开属性方法介绍和进阶实例代码
2010/11/09 Javascript
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
JS定时关闭窗口的实例
2013/05/22 Javascript
jquery将一个表单序列化为一个对象的方法
2014/01/03 Javascript
JavaScript省市联动实现代码
2014/02/15 Javascript
jQuery实现购物车数字加减效果
2015/03/14 Javascript
jQuery蓝色风格滑动导航栏代码分享
2015/08/19 Javascript
JavaScript简单下拉菜单实例代码
2015/09/07 Javascript
用JS实现图片轮播效果代码(一)
2016/06/26 Javascript
详解JS几种变量交换方式以及性能分析对比
2016/11/25 Javascript
jquery 实时监听输入框值变化的完美方法(必看)
2017/01/26 Javascript
Angularjs上传文件组件flowjs功能
2017/08/07 Javascript
JavaScript函数式编程(Functional Programming)声明式与命令式实例分析
2019/05/21 Javascript
基于Node.js的大文件分片上传示例
2019/06/19 Javascript
layui自定义工具栏的方法
2019/09/19 Javascript
python中的装饰器详解
2015/04/13 Python
Python实现调度算法代码详解
2017/12/01 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
详解python项目实战:模拟登陆CSDN
2019/04/04 Python
python使用 __init__初始化操作简单示例
2019/09/26 Python
python 字段拆分详解
2019/12/17 Python
python 类之间的参数传递方式
2019/12/20 Python
HTML5 绘制图像(上)之:关于canvas元素引领下一代web页面的问题
2013/04/24 HTML / CSS
机电工程学生自荐信范文
2013/12/07 职场文书
保险公司年会主持词
2014/03/22 职场文书
幼儿教师寄语集锦
2014/04/03 职场文书
企业晚会策划方案
2014/05/29 职场文书
机械工程及自动化专业求职信
2014/09/03 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
平遥古城导游词
2015/02/03 职场文书