每天在laravel中获取数据

时间:2019-04-19 17:02:55

标签: php mysql laravel

我有mysql表,该表具有带日期的收入记录。我想每天,每周和每月获取总收入。

我试图根据日期获取这些记录,但令人困惑。

我想每天,每周和每月获取这些报告。

1 个答案:

答案 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();
   }