Какой метод использовать для коллекции Laravel, чтобы найти дату между двумя DateTimePhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Какой метод использовать для коллекции Laravel, чтобы найти дату между двумя DateTime

Сообщение Anonymous »

Код: Выделить всё

$period = new DatePeriod(
new DateTime('2024-03-20 00:00:00'),
new DateInterval('P1D'),
new DateTime('2024-03-28 23:59:59')
);
$suppliersInfo = OrderProduct::whereNotNull('brand')
->whereBetween('updated_at', [$startDate, $endDate ])->get();

$labels = [];

foreach ($period as $date){
$labels[] = $date->format('d-m-Y');
$dateToSearch = $date->format('Y-m-d');
$orderCount = $suppliersInfo->where( 'updated_at' , $dateToSearch )
->where('brand','nestle')
->count();
$data[] = $orderCount;
}
Как видно из приведенного выше кода, у меня есть информация о дате, содержащая только дату, но мне нужно найти ее в поле базы данных (postgresql) update_at DateTime. Поскольку в этом поле также содержится информация о времени, я не могу найти дату. Я могу установить две даты из $dateToSearch с информацией о времени 00:00:00 и 23:59:59 и использоватьwhereBetween, но я не уверен, что это подходящее решение. Есть ли что-нибудь проще, например, мы используемwhereDate в Eloquent?
Кстати, я не могу использовать DatePeriod::INCLUDE_END_DATE из-за моей версии PHP.

Подробнее здесь: https://stackoverflow.com/questions/786 ... o-datetime
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»