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

sam*_*toh 3 php cron scheduling laravel laravel-5.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');
    }
}
Run Code Online (Sandbox Code Playgroud)

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

如何测试我的 cron 工作?

Add*_*Ltd 8

您可以按照以下步骤操作:

1)您可以php artisan list在cmd中运行命令并找到您的cron。

2)找到你的cron后,你就可以运行了php artisan yourcron

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

希望这对你有用!


小智 5

进入项目目录并运行

php /path/to/artisan schedule:run
Run Code Online (Sandbox Code Playgroud)

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