Метод Arr::from() у Laravel 12.14

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

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

Команда Laravel випустила версію v12.14.0, яка включає нові можливості: метод Arr::from(), метод контейнера currentlyResolving(), нові методи except для класу Context та багато іншого:

# Метод Arr::from()

Сергій Данілченко додав метод Arr::from(), який отримує базовий масив елементів з переданого аргументу:

use Illuminate\Support\Arr;

Arr::from(collect(['name' => 'Laravel'])); // ['name' => 'Laravel']
Arr::from($jsonable); // Декодує об'єктні дані через `Jsonable` в масив
Arr::from($arrayable); // Повертає масив за допомогою методу `toArray()` об'єкта

Деталі можна знайти у Pull Request #55715.

# Нові методи Context

Володя Куршудян додав методи except() та exceptHidden() до класу Context, що дозволяє отримувати всі значення, окрім зазначених ключів:

Context::add('user_id', 42);
Context::add('request_id', 'req-abc123');
Context::add('ip_address', '192.168.0.1');
Context::add('sensitive_token', 'secret');

$logData = Context::except(['sensitive_token']);

// Результат:
[
    'user_id' => 42,
    'request_id' => 'req-abc123',
    'ip_address' => '192.168.0.1',
]

Деталі можна знайти у Pull Request #55692.

# Утиліта currentlyResolving в контейнері

Джастін Селіга додав метод currentlyResolving, який повертає зв'язок, який контейнер зараз розв'язує:

#[Attribute(Attribute::TARGET_PARAMETER)]
class RegisteredFor implements ContextualAttribute
{
    public static function resolve(self $attribute, Container $container): array
    {
        $resolving = $container->currentlyResolving(); // Production::class

        return resolve(Registrar::class)->for($resolving);
    }
}

Деталі можна знайти у Pull Request #55684.

# Примітки до випуску

Повний список нових можливостей та оновлень доступний нижче, а також ви можете переглянути різницю між 12.13.0 та 12.14.0 на GitHub. Наступні примітки безпосередньо з changelog:

# v12.14.0

  • [12.x] Додана підтримка useCurrent для типів колонок date і year від @nicholasbrantley (#55619)
  • [12.x] Оновлено "Number::fileSize" для використання правильного префіксу та додано параметр префіксу від @Boy132 (#55678)
  • [12.x] Оновлено PHPDoc для whereRaw для дозволу Expression в $sql від @mitoop (#55674)
  • Скасовано "[12.x] Make Blueprint Resolver Statically" від @taylorotwell (#55690)
  • [12.x] Додана підтримка віртуальних властивостей при серіалізації моделей від @beschoenen (#55691)
  • [12.x] Виправлено поширення помилок у Http::preventStrayRequests під час використання Http::pool від @LeTamanoir (#55689)
  • [12.x] Виправлено неправильне використання генеративних типів у Schema\Builder від @taka-oyama (#55687)
  • [12.x] Додано опцію для вимкнення MySQL ssl під час відновлення або об'єднання міграцій від @andersonls (#55683)
  • [12.x] Додані методи except та exceptHidden до класу Context від @xurshudyan (#55692)
  • [12.x] Утиліта currentlyResolving в контейнері від @jrseliga (#55684)
  • [12.x] Тест для currentlyResolving контейнера від @jrseliga (#55694)
  • [12.x] Виправлено обробку значень за замовчуванням для параметрів маршруту з полем зв'язку від @stancl (#55697)
  • Переміщено Timeout для автентифікації та додано до скидань паролів від @valorin (#55701)
  • [12.x] Оптимізація BladeCompiler від @rzv-me (#55703)
  • [12.x] Підтримка ітерованих об'єктів для шляхів виявлення подій від @calebdw (#55699)
  • [12.x] Типи: AuthorizesRequests::resourceAbilityMap від @liamduckett (#55706)
  • [12.x] Додано гнучку підтримку до кешу з запам'ятовуванням від @timacdonald (#55709)
  • [12.x] Введено Arr::from() від @daniser (#55715)
  • [12.x] Виправлено неправильний morphClass для зв'язків morph to many у getCurrentlyAttachedPivots від @amir9480 (#55721)
  • [12.x] Поліпшено типізацію класів Http від @cosmastech (#54783)
  • Додано deleteWhen для middleware завдань з обмеженням від @moshe-autoleadstar (#55718)

Популярні

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

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

Інтеграція Laravel Socialite з бібліотекою Google Client PHP

Ви хочете навчитися, як інтегрувати Google OAuth у вашому проекті Laravel, використовуючи Socialite? Дізнайтеся, як налаштувати доступ до сервісів Google, таких як Календар, у нашій сьогоднішній статті

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

Що нового в PHP 8.5

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

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

Генерація документації в Laravel за допомогою штучного інтелекту

Docudoodle — це потужний пакет для генерації документації в Laravel, який допомагає легко аналізувати вашу кодову базу та створювати документацію за допомогою обраного вами AI. Чи готові ви дізнатися, як цей інструмент може спростити вашу роботу з документуванням коду? Читайте далі!