Как получить дату из массива объектов в Laravel

#php #laravel #php-carbon

#php #laravel #php-carbon

Вопрос:

Я пытаюсь получить дату из $array[$i] переменной, потому $array[$i] что она дает мне список объектов, и я хочу просто дату из этого объекта

 for($i=0; $i<30; $i  ){
      $array[$i] = Carbon::now()->addDays(-$i);
      $today_graph[$i] = payment::where('payment_date','=', $array[$i])->sum('amount');
}
 

текущий массив выдает список объектов

Комментарии:

1. FTR ->addDays(-$i) эквивалентно ->subDays($i)

2. Этот скрипт выполнит 30 SQL-запросов, которые вам лучше использовать GROUP BY для получения всех данных за 1 запрос.

Ответ №1:

Используйте $array[$i]->toDateString()

Или, если вам нужно время, вы также можете использовать это $array[$i]->toDateTimeString()

Проверьте документы здесь.

Ответ №2:

 payment::whereDate('payment_date','=', $array[$i])->sum('amount');
 

https://laraveldaily.com/eloquent-date-filtering-wheredate-and-other-methods/