PHP编程:Laravel实现定时任务的示例代码

介绍《PHP编程:Laravel实现定时任务的示例代码》开发教程,希望对您有用。

《PHP编程:Laravel实现定时任务的示例代码》要点:
本文介绍了PHP编程:Laravel实现定时任务的示例代码,希望对您有用。如果有疑问,可以联系我们。

PHP实例简介

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

PHP实例基本用法

PHP实例生成命令

PHP实例
php artisan make:command AreYouOK

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

PHP实例编辑命令

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

PHP实例
... ...
protected $signature = 'areyou:ok'; // 命令名称
protected $description = '雷军,科技圈最会唱歌的男人'; // 命令描述,没什么用
public function __construct()
{
  parent::__construct();
  // 初始化代码写到这里,也没什么用
}
public function handle()
{
  // 功能代码写到这里
}

PHP实例注册命令

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

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

PHP实例编写调用逻辑:

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

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

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

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

代码如下:

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

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

PHP实例fire

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

PHP实例以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家PHP.

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部