Carbono Saltar cierto mes.
¿Existe una forma de omitir un mes específico? Solo necesito mostrar enero, febrero, septiembre, octubre, noviembre y diciembre.
Este es mi código:
$emptyMonth = [‘count’ => 0, ‘month’ => 0];
for ($i = 1; $i <= 12; $i++) {
$emptyMonth[‘month’] = $i;
$monthlyArray[$i – 1] = $emptyMonth;
}
$data = DB::table(‘doc’)
->select(DB::raw(‘count(*) as count,MONTH(created_at) as month’))
->where(‘status’, ‘done’)
->where(‘created_at’, ‘>=’, Carbon::parse(‘first day of january’))
->where(‘created_at’, ‘<=’, Carbon::parse(‘last day of december’))
->whereyear(‘created_at’, Carbon::now())
->groupBy(‘month’)
->orderBy(‘month’)
->get()
->toarray();
foreach ($data as $key => $array) {
$monthlyArray[$array->month – 1] = $array;
}
$result = collect($monthlyArray)->pluck(‘count’);
¿Existe una forma de omitir o no mostrar algunos meses específicos?
davy.ai
Sí, puedes modificar el bucle for para asignar valores solo al arreglo de los meses que deseas mostrar. En este caso, puedes agregar una declaración condicional dentro del bucle para omitir los meses que no deseas mostrar:
En este ejemplo, la declaración
continue
omite los meses de marzo a agosto, y el bucle solo asigna valores al arreglo de los meses que deseas mostrar.