我试图在流明中执行计划任务以删除3天以上的记录。
这是我的命令:
<?php
namespace App\Console\Commands;
use App\Article;
use Carbon\Carbon;
use Illuminate\Console\Command;
class DeleteRecords extends Command {
protected $signature = 'delete:records';
protected $description = 'Delete Articles older than 3 days';
public function __construct() {
parent::__construct();
}
public function handle() {
Article::where('created_at', '<=', Carbon::now()->subDays(3))->delete();
}
}
在我的Kernel.php类中,我将其注册为:
class Kernel extends ConsoleKernel {
protected $commands = [
DeleteRecords::class,
];
protected function schedule(Schedule $schedule) {
$schedule->command('delete:records')->everyMinute();
}
}
当我运行php artisan delete:records
时,它可以工作,并且记录将从数据库中删除。
我使用crontab -e
插入了这一行:
* * * * * php /hb/development/api/artisan schedule:run >> /dev/null 2>&1
但是什么也没发生...我也尝试过:
* * * * * php /hb/development/api/artisan schedule:run 1>> /dev/null 2>&1
这:
* * * * * usr/bin/php /hb/development/api/artisan schedule:run >> /dev/null 2>&1
这:
* * * * * cd /hb/development/api && php artisan schedule:run >> /dev/null 2>&1
但是这些命令都不起作用。
我真的没有主意,因此可以提供任何帮助。
我使用MacOS Catalina 10.15.5,Lumen 5.8和PHP 7.1.3