源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-01-24 13:59 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Laravel实现定时任务的示例代码
[b]简介[/b] 定时任务是后端开发过程中一项十分常见的需求,常出现在数据统计、垃圾信息清理等场景中。Laravel 提供了一整套的定时任务工具,让我们只需要专注地完成逻辑,剩下的基础工作将由它来承担。 [b]基本用法[/b] [b]生成命令[/b]
php artisan make:command AreYouOK
5.2 及之前的版本,此命令为 `php artisan make:console xxx` [b]编辑命令[/b] 编辑 `app/Console/Commands/AreYouOK.php` 文件,修改如下几处:
... ...
protected $signature = 'areyou:ok'; // 命令名称
protected $description = '雷军,科技圈最会唱歌的男人'; // 命令描述,没什么用

public function __construct()
{
  parent::__construct();
  // 初始化代码写到这里,也没什么用
}
public function handle()
{
  // 功能代码写到这里
}
[b]注册命令[/b] 编辑 `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 提供了从一分钟到一年的各种长度的时间函数,直接调用即可。 [b]把这个 Laravel 项目注册到系统的 cron 里[/b] 编辑 `/etc/crontab` 文件,加入如下代码:
[u]复制代码[/u] 代码如下:
* * * * * root /usr/bin/php /var/www/xxxlaravel/artisan schedule:run >> /dev/null 2>&1
上面一行中的 `/var/www/xxxlaravel` 需要改为实际的路径。 [b]fire[/b] 重启 cron 激活此功能:`systemctl restart crond.service`,搞定! 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部