put($file, ""); #按月获取数据 $firstDay = UserOperationDaily::select('created_at') ->orderBy('created_at') ->first(); $firstDay = strtotime($firstDay->created_at); $firstMonth = Carbon::create(date("Y-m",$firstDay)); $now = Carbon::now(); $current = $firstMonth; $sumTime = 0; while ($current <= $now) { # code... $start = Carbon::create($current)->startOfMonth(); $end = Carbon::create($current)->endOfMonth(); $date = $current->format('Y-m'); $time = UserOperationDaily::whereDate('created_at','>=',$start) ->whereDate('created_at','<=',$end) ->sum('duration')/1000; $sumTime += $time; $editor = UserOperationDaily::whereDate('created_at','>=',$start) ->whereDate('created_at','<=',$end) ->groupBy('user_id') ->select('user_id')->get(); $info = $date.','.(int)($time/3600).','.(int)($sumTime/3600).','.count($editor); $this->info($info); Storage::disk('local')->append($file, $info); $current->addMonth(1); } return 0; } }