使用Laravel计划每分钟运行一次控制器功能



我尝试使用Laravel调度程序每分钟运行一次控制器功能,但不起作用

这是我的appconsolekernel.php

<?php
namespace AppConsole;
use IlluminateConsoleSchedulingSchedule;
use IlluminateFoundationConsoleKernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
//
];
/**
* Define the application's command schedule.
*
* @param  IlluminateConsoleSchedulingSchedule  $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
// $schedule->command('inspire')
//          ->hourly();
$obj = new HomeController();
$schedule->call(function () use ($obj) {

$obj->daily_set_profit(); //call method

})->everyMinute();
}
/**
* Register the commands for the application.
*
* @return void
*/
protected function commands()
{
$this->load(__DIR__.'/Commands');
require base_path('routes/console.php');
}
}

不要忘记运行

php artisan schedule:run

最后,您可以在调度任务上管理此命令,您必须向服务器的 crontab 文件添加一个条目

* * * * * php /path/to/artisan schedule:run 1>> /dev/null 2>&1

* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1

按照本教程,简单且非常有用

最新更新