如何在本地主机 Windows 中测试我的 cron 作业? (laravel 5.3)

问题描述 投票:0回答:3

我通过编辑 app\Console\Kernel.php 在 laravel 5.3 上创建一个 cron 作业,如下所示:

<?php

namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
use DB;

class Kernel extends ConsoleKernel
{
    protected $commands = [
        //
    ];

    protected function schedule(Schedule $schedule)
    {
        $schedule->call(function () {
            $id = 1;
            DB::table('orders')
              ->where('id', $id)
              ->update(['status ' => 2, 'canceled_at' => date("Y-m-d H:i:s")]);
        })->everyMinute();
    }

    protected function commands()
    {
        require base_path('routes/console.php');
    }
}

我尝试检查数据库中的表,但它没有更新

如何测试我的 cron 作业?

php laravel cron laravel-5.3 scheduling
3个回答
11
投票
  1. 在cmd中运行

    php artisan list
    命令并找到你的cron。

  2. 运行

    php artisan yourcron

您可以点击我们的链接了解有关 cron 作业的更多详细信息。


6
投票

进入项目目录并运行

php /path/to/artisan schedule:run

更多信息:https://laravel.com/docs/5.3/scheduling


0
投票

嘿,您也可以在定义 cron 时创建日志文件。因为我已经创建了我的...

* * * * * php /var/www/html/sharep/artisan ElasticSearch:ElasticSearchData >> /var/www/html/sharep.log 2>&1

此 cron 会在 1 分钟后运行。日志保存在 .log 文件中,如上所述。

© www.soinside.com 2019 - 2024. All rights reserved.