Видалення елементів колекції безпосередньо за допомогою методу forget у Laravel

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

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

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

Метод forget видаляє елементи за ключами:

$collection = collect(['email' => 'user@example.com', 'role' => 'admin']);
 
// Видалити один ключ
$collection->forget('email');
// Результат: ['role' => 'admin']
 
// Видалити кілька ключів
$collection->forget(['email', 'role']);
// Результат: []

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

class CartManager
{
    protected $items;
 
    public function __construct(array $cartItems)
    {
        $this->items = collect($cartItems);
    }
 
    public function removeItems(string|array $productIds)
    {
        $this->items->forget($productIds);
 
        return $this;
    }
 
    public function clearExpiredDiscounts()
    {
        $expiredCoupons = ['summer_sale', 'flash_deal', 'early_bird'];
 
        $this->items->forget($expiredCoupons);
 
        return $this;
    }
 
    public function removeUnavailableProducts(array $outOfStock)
    {
        // Видалити конкретні недоступні товари
        $this->items
            ->forget(
                collect($outOfStock)
                    ->map(fn($sku) => "product_{$sku}")
                    ->all()
            );
 
        return $this;
    }
}
 
$cart = new CartManager([
    'product_123' => ['qty' => 2, 'price' => 29.99],
    'shipping' => 9.99,
    'summer_sale' => -5.00,
    'product_456' => ['qty' => 1, 'price' => 15.50]
]);
 
$cart->clearExpiredDiscounts()
     ->removeUnavailableProducts(['456']);

На відміну від інших методів колекцій, forget змінює оригінальну колекцію, що робить його ідеальним для безпосереднього маніпулювання даними

Популярні

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

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

Використання штучного інтелекту для управління перекладами в Laravel

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

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

Що нового в PHP 8.5

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

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

Nuxt 3 + Laravel Sanctum: Просте та надійне рішення для автентифікації вашого SPA та API

У сучасній веб-розробці аутентифікація є ключовою для захисту додатків і даних користувачів. Дізнайтеся, як модуль nuxt-sanctum-authentication спростить інтеграцію між Nuxt 3 та Laravel Sanctum, забезпечуючи надійний і зручний спосіб реалізації аутентифікації для вашого проєкту