Елегантна робота з датами за допомогою Carbon у Laravel

Перекладено ШІ 2 Laravel News 03 червня, 2026

Досліджуйте, як бібліотека Carbon у Laravel спрощує маніпуляції з датами, перетворюючи складні розрахунки на зрозумілий код. Чи готові ви вдосконалити своє програмування, використовуючи ці інтуїтивно зрозумілі методи навігації? Читайте далі!

Бібліотека Carbon у Laravel забезпечує зручні методи для маніпуляцій з датами, спрощуючи знаходження конкретних днів і часів у ваших додатках

Carbon пропонує інтуїтивний інтерфейс для навігації по датах, що дозволяє легко знаходити наступну дату певного дня, попереднє потрапляння конкретного робочого дня або точний час для планування. Ці методи перетворюють складні розрахунки дат на зрозумілий і чистий код

Ось швидка демонстрація:

$today = now(); // 2024-04-05 09:15:00
$today->next('17:00');      // 2024-04-05 17:00:00
$today->next('Wednesday');  // 2024-04-10 00:00:00
$today->previous('Sunday'); // 2024-03-31 00:00:00

Ці можливості навігації особливо корисні в додатках для планування, де логіка дат може швидко ускладнитися:

class EventScheduler
{
    public function findNextSession(Carbon $from)
    {
        // Перейти до наступного робочого дня, якщо зараз вихідні
        if ($from->isWeekend()) {
            $from = $from->nextWeekday();
        }
 
        // Перейти до наступного доступного часу сеансу
        return $from->next('13:00');
    }
 
    public function planTeamMeetings(Carbon $start)
    {
        return [
            'current_sprint' => $start->next('Thursday')->setTime(9, 0),
            'next_sprint' => $start->next('Thursday')->addWeek()->setTime(9, 0),
            'contingency_slot' => $start->next('Friday')->setTime(16, 0)
        ];
    }
 
    public function getHolidaySchedule(Carbon $date)
    {
        return [
            'upcoming_holiday' => [
                'start' => $date->nextWeekendDay()->setTime(10, 0),
                'end' => $date->nextWeekendDay()->setTime(18, 0)
            ],
            'extended_holiday' => [
                'start' => $date->addWeek()->nextWeekendDay()->setTime(10, 0),
                'end' => $date->addWeek()->nextWeekendDay()->addDay()->setTime(18, 0)
            ]
        ];
    }
}

Методи навігації Carbon функціонують як тимчасові скорочення, що дозволяють розробникам безпосередньо висловлювати наміри щодо дат, замість того щоб вручну виконувати розрахунки. Такий підхід призводить до більш зрозумілого та зручного в обслуговуванні коду, який чітко комунікує свій намір, приховуючи складність календарних розрахунків

Популярні

Інше, що варто прочитати

12 Оновлено 02 червня, 2026

Удосконалюйте свої проєкти Laravel за допомогою справжнього штучного інтелекту для кодування з Laravel Boost!

Готові підняти свій робочий процес у Laravel на новий рівень? У цій статті я розгляну Laravel Boost, інноваційний AI-допомічник для програмування, який зробить вашу розробку швидшою та продуктивнішою

41 Оновлено 02 червня, 2026

Що нового в PHP 8.5

PHP 8.5 обіцяє безліч нових можливостей, таких як оператор Pipe, функції `array_first()` та `array_last()`, а також нове розширення URI. Чи готові ви дізнатися, як ці функції можуть спростити вашу розробку? Читайте далі, щоб дізнатися більше про ці захоплюючі нововведення

74 Оновлено 02 червня, 2026

Laravel Boost — ваш стартовий набір для програмування з використанням штучного інтелекту

Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel