Пакет Laravel Zap — це гнучка система управління розкладом з глибокою інтеграцією в Laravel. За допомогою Zap ви можете створювати календарні розклади для Eloquent моделей, таких як події, призначення, повторювані заходи та інше:
use Zap\Facades\Zap;
// Щотижнева зустріч команди
$meeting = Zap::for($user)
->named('Командний стендап')
->from('2025-01-01')
->to('2025-12-31')
->addPeriod('09:00', '09:30')
->weekly(['monday', 'wednesday', 'friday'])
->save();
Під час роботи з управлінням розкладом необхідно виконувати запити для перевірки доступності моделей, знаходити наступні вільні часові слоти, усувати конфлікти в розкладі тощо:
// Перевірка доступності
$available = $user->isAvailableAt('2025-03-15', '14:00', '16:00');
// Отримання вільних слотів
$slots = $user->getAvailableSlots(
date: '2025-03-15',
dayStart: '09:00',
dayEnd: '17:00',
slotDuration: 60
);
// Перевірка на конфлікти
$conflicts = Zap::findConflicts($schedule);
// Отримання розкладів на дату
$todaySchedules = $user->schedulesForDate(today());
Цей пакет ідеально підходить для систем бронювання призначень, управління кімнатами для зустрічей, управління змінами працівників та інших додатків на основі розкладу.
👨💻 Ознайомтеся з проєктом на GitHub: ludoguenet/laravel-zap
Досліджуйте новий пакет Data Model для PHP, який спрощує процес гідратації об'єктів без зайвих складнощів! Дізнайтеся, як впровадження типобезпечних об'єктів може революціонізувати ваш підхід до розробки, читаючи нашу статтю
Використання Vite для створення фронтенд-ресурсів у вашому додатку Laravel може бути захоплюючим, але іноді ви можете стикнутися з певними помилками. У цій статті ми розглянемо чотири поширені помилки, з якими ви можете зіткнутися, а також підкажемо способи їх усунення, щоб ви могли знову зосередитися на розробці вашого додатку
Ви знали, що в одному додатку Laravel можна реалізувати кілька API? У нашій статті ви дізнаєтеся, як за допомогою Scramble легко документувати різні версії API та налаштувати доступ до документації, щоб зробити її публічною або приватною. Читайте далі, щоб дізнатися більше