我有mysql表,该表具有带日期的收入记录。我想每天,每周和每月获取总收入。
我试图根据日期获取这些记录,但令人困惑。
我想每天,每周和每月获取这些报告。
答案 0 :(得分:0)
您可以使用现有的Laravel cron作业调度来满足您的特定要求。
请参考以下Laravels官方文档 https://laravel.com/docs/5.8/scheduling#scheduling-queued-jobs
我将展示一个简单的示例,以使您对这种配置有所了解。
php artisan make:command DailyUpdate
以上命令将在以下位置创建一个类组件 app / Console / Commands目录。
生成的类文件将与以下类似,
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
class DailyUpdate extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'command:name';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Command description';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return mixed
*/
public function handle()
{
//
}
}
然后根据您的要求更改以下内容。
protected $signature = 'command:name';
protected $description = ‘Command description’;
在handle()内部,您可以安排需要重复执行的实现。
public function handle() {
// implementation
}
所有更改之后,您需要注册该命令。
在app / console / kernal.php中,如下更改配置,
protected $commands = [
Commands\DailyUpdate::class
];
protected function schedule(Schedule $schedule)
{
$schedule->command('hour:update')
->daily();
}