我通过编辑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作业?
答案 0 :(得分:4)
您可以按照以下步骤操作:
1)您可以在cmd中运行php artisan list
命令并找到您的cron。
2)找到你的cron后,你可以运行php artisan yourcron
。
您可以按照此link了解有关cron作业的更多详细信息。
希望这对你有用!
答案 1 :(得分:0)
答案 2 :(得分:0)
* * * * * php /var/www/html/sharep/artisan ElasticSearch:ElasticSearchData >> /var/www/html/sharep.log 2>&1
这个cron在1分钟后运行。如上所述,日志保存在.log文件中。