Carbon

21 Марта 2023 16:11

Carbon - Библиотека PHP для работы с датами. Она имеет множество полезных методов для манипулирования датами. По умолчанию входит в ядро Laravel.

Ссылка на документацию - https://carbon.nesbot.com/docs/

Начинаем работу с конструкции $now = Carbon::now();.  Будет возвращен объект Carbon с данными и методами.

Методы для работы с датами:

Метод Описание

Результат

$now->format('Y-m-d H:i:s') Форматирует дату и отдает в виде строки
Возможные ворматы такие же как и в PHP
'21-03-2023 16:35'
Разница дат
$now->diff(Carbon::parse('20-03-2023 16:35')) Вычисляет разницу дат. Объект со свойствами по дням,
часам, минутам и т.д.
$now->diffAsCarbonInterval(Carbon::parse('20-03-2023 16:35')) Вычисляет разницу дат, но при этом,
результатом будет экземпляр
CarbonInterval, а не DateInterval

Объект CarbonInterval, к которому
можно применить, например toArray()
и получить человекопонятные свойства

$now->diffInSeconds($now->copy()->addSeconds(59)) Вычисляет разницу дат в секундах '59'
$now->diffInMinutes($now->copy()->addMinutes(60)) Вычисляет разницу в минутах '60'
$now->diffInHours($now->copy->addDay(1)) Вычисляет разницу в часах '24'
$now->diffInDays($now->copy()->addMonth(1)) Вычисляет разницу в днях '30'
Добавление / Убавление
$now->addYear()

Добавляет год

 
$now->subYear() Убавляет год  
$now->addYears(3) Добавляет несколько лет  
$now->subYears(3) Убавляет несколько лет  
Остальные меры исчесления времени по такому же принципу: Second, Minute, Hour, Day, Week, Month, Quarter, Year, Century