Laravel - второй, где не действует

$from_date = Carbon::today();
$to_date =  Carbon::today();



$users = User::where('created_at', '>=', $from_date)
            ->where('created_at', '<=', $to_date)
            ->count();

Я пытаюсь создать несколько отчетов. Сегодня одна из предустановок. Даты указаны как переменные from_date и to_date. Но второй столбец всегда приводит к записи 0.

Сегодня зарегистрировались два пользователя, и как только второй будет удален, я получаю результаты.

вы хотите получить все записи за сегодняшний день?

Shailendra Gupta 31.10.2018 11:51

В вашем случае $from_date и $to_date идентичны, поэтому сравнение не имеет смысла.

r00t 31.10.2018 11:53

Только для сегодняшнего значения, если пользователь нажимает другое предустановленное значение, например, на этой неделе, значения будут другими.

user9555022 31.10.2018 11:54
2
3
45
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Ответ принят как подходящий

Измените даты от и до на это:

$from_date = Carbon::today()->startOfDay();
$to_date = Carbon::today()->endOfDay();

какова будет стоимость $from_date и $to_date

Shailendra Gupta 31.10.2018 11:59

дата: 2018-10-31 00: 00: 00.0 UTC (+00: 00) и дата: 2018-10-31 23: 59: 59.999999 UTC (+00: 00) соответственно

nakov 31.10.2018 12:02

Для результатов с сегодняшнего дня вы можете использовать

$users = User::whereDate('created_at', Carbon::today())
        ->count();

Для проверки даты используйте только метод ->whereDate

$users = User::whereDate('created_at', '>=', $from_date)
            ->whereDate('created_at', '<=', $to_date)
            ->count();

использовать этот

 $users = User::whereDate('created_at', Carbon::today())->count();

Другие вопросы по теме