У Laravel 11.2.0 з'явилася fluent() допомога, яка спрощує конвертацію масивів у Fluent інстанції. Тепер, починаючи з Laravel 11.35, у нас є зручний метод для перетворення відповіді HTTP-клієнта на fluent інстанцію:
use Illuminate\Support\Facades\Http;
$response = Http::get('https://jsonplaceholder.typicode.com/posts')->fluent();
$response->get('0.title'); // sunt aut facere...
$response->collect()->pluck('title'); // ["sunt aut facere...", "qui est esse", ...]
Ще одна корисна можливість — перетворення JSON-даних у конкретні типи. Наприклад, можна конвертувати рядкову дату в Carbon інстанцію:
use Illuminate\Support\Facades\Http;
$response = Http::get('https://api.chucknorris.io/jokes/random')->fluent();
$response->date('created_at');
$response->date('updated_at');
/*
Illuminate\Support\Carbon @1578231741 {#261 ▼ // routes/web.php:9
date: 2020-01-05 13:42:21.455187 UTC (+00:00)
}
*/
Fluent також підтримує інші корисні типи, як-от boolean, enum, масиви enum та інші. Один із моїх улюблених способів — використовувати знайомі методи, як-от only і except, для отримання конкретних даних:
use Illuminate\Support\Facades\Http;
$response = Http::get('https://api.chucknorris.io/jokes/random')->fluent();
$response->except('categories');
/*
array:6 [▼ // routes/web.php:9
"created_at" => "2020-01-05 13:42:19.897976"
"icon_url" => "https://api.chucknorris.io/img/avatar/chuck-norris.png"
"id" => "KqoQdIJdSE2ezokPmHSvdw"
"updated_at" => "2020-01-05 13:42:19.897976"
"url" => "https://api.chucknorris.io/jokes/KqoQdIJdSE2ezokPmHSvdw"
"value" => "Одного вечора Чак Норріс поїв чилі на вечерю. А наступного дня стався Великий Вибух."
]
*/
$response->only('id', 'url', 'value');
Рекомендую ознайомитися з класом Fluent у документації Laravel API. Fluent використовує trait InteractsWithData, що містить безліч зручних методів для роботи з даними Fluent.
Laravel Livewire випустив нову версію 3.6, яка приносить з собою цікаві HTML-директиви для управління видимістю DOM-елементів і JavaScript-діями. Досліджуйте нові можливості Livewire, що допоможуть вам створити ще більш інтерактивні користувацькі інтерфейси!
Вам цікаво дізнатися, як спростити інтеграцію RabbitMQ у вашому Laravel-додатку? У нашій статті ми розглянемо пакет Simple RabbitMQ, який дозволяє легко налаштувати багатозʼєднання, публікувати повідомлення та обробляти черги за допомогою простого синтаксису. Читайте далі, щоб дізнатися більше!
Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу