Метод endOfDay
Метод endOfDay применяется к объекту Carbon
и изменяет его время на 23:59:59.999999 текущего дня.
Этот метод полезен при работе с временными интервалами,
когда нужно получить записи за полный день, включая
последнюю секунду. Метод не принимает параметров и
возвращает тот же объект Carbon с изменённым временем.
Синтаксис
<?php
$date->endOfDay();
?>
Пример
Получим текущую дату и время, а затем установим время на конец дня:
<?php
use Carbon\Carbon;
$res = Carbon::now();
echo $res;
$res->endOfDay();
echo $res;
?>
Результат выполнения кода:
"2026-09-07 15:30:45"
"2026-09-07 23:59:59"
Пример
Используем метод endOfDay для создания диапазона
даты и фильтрации записей в Laravel:
<?php
namespace App\Http\Controllers;
use App\Models\Article;
use Carbon\Carbon;
use Illuminate\Http\Request;
class ArticleController extends Controller
{
public function index()
{
$start = Carbon::parse('2026-09-07')->startOfDay();
$end = Carbon::parse('2026-09-07')->endOfDay();
$articles = Article::whereBetween('created_at', [$start, $end])->get();
foreach ($articles as $article) {
echo $article->title . "\n";
}
}
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
Пример
Создадим объект с произвольной датой и временем,
затем применим метод endOfDay:
<?php
use Carbon\Carbon;
$res = Carbon::create(2026, 12, 31, 10, 30, 15);
echo $res;
$res->endOfDay();
echo $res;
?>
Результат выполнения кода:
"2026-12-31 10:30:15"
"2026-12-31 23:59:59"
Смотрите также
-
метод
startOfDay,
который устанавливает время на начало дня -
метод
addDays,
который прибавляет указанное количество дней -
метод
subDays,
который вычитает указанное количество дней -
метод
format,
который форматирует дату по заданному шаблону