---
title: "collect() - колекції будь-де"
url: https://laravelukraine.com/blog/collect-kolekciyi-bud-de
author: "Олексій Бабінцев"
date: 2026-09-23
---

# collect() - колекції будь-де

Працюєте з масивами? Перетворіть їх на колекції одним викликом.

`collect()` обгортає масив у Collection.

**Переваги:**

* Fluent-синтаксис
* Доступ до всіх методів колекцій
* Використання в будь-яких шарах застосунку

Порада: застосовуйте collect() до масивів з Request для зручного фільтрування.

```php
// Масив → колекція
$data = collect([1, 2, 3, 4, 5]);

$result = $data->filter(fn($n) => $n > 2)
  ->map(fn($n) => $n * 2)
  ->sum();

// Обробка request-даних
public function store(Request $request)
{
  $tags = collect($request->tags)
    ->filter()
    ->unique()
    ->values()
    ->toArray();

  Post::create([
    'title' => $request->title,
    'tags' => $tags,
  ]);
}

// Конфігураційні масиви
$activeModules = collect(config('modules'))
  ->filter(fn($module) => $module['enabled'])
  ->pluck('name')
  ->toArray();
```

```php
// API-відповідь
$apiData = Http::get('api/users')->json();

$users = collect($apiData['users'])
  ->map(fn($user) => [
    'id' => $user['id'],
    'name' => $user['first_name'] . ' ' . $user['last_name'],
    'email' => $user['email'],
  ])
  ->filter(fn($user) => $user['email'])
  ->values();

// Робота з файлами
$lines = collect(file('data.txt'))
  ->map(fn($line) => trim($line))
  ->filter()
  ->unique();
```
