Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама

Статті за тегом «Laravel»

Статті, новини, туторіали та переклади від учасників спільноти

No results.
Deftform
Новини 25 серпня 2026

Deftform - простий конструктор форм, який не заважає вашій роботі

Deftform - це чистий і швидкий конструктор форм для Laravel-розробників, який робить те, що вам дійсно потрібно. З AI-помічником, вебхуками, інтеграціями та ціноутворенням без обов'язкової передплати.

1
Tips 24 серпня 2026

groupBy() - організація даних як у таблиці

Потрібно показати пости за категоріями? Вкладені цикли не потрібні.

groupBy() групує колекцію за ключем.

Як працює:

Повертає масив груп, де кожна група - окрема колекція.

Розширені можливості:

  • Групування за callback
  • Кілька рівнів групування
  • Dot notation

Порада: ідеально для аналітики, звітів і категоризації.

// Групування за категорією
$byCategory = $posts->groupBy('category_id');

// Групування за роком
$byYear = $posts->groupBy(fn($p) => $p->created_at->year);

// Доступ до груп
foreach ($byCategory as $categoryId => $posts) {
  echo "Category {$categoryId}: {$posts->count()} posts\n";
}

// Кілька рівнів
$byYearMonth = $posts->groupBy([
  fn($p) => $p->created_at->year,
  fn($p) => $p->created_at->month,
]);

// Групування по зв'язку
$byPostTitle = $comments->groupBy('post.title');

// Практичний приклад - суми продажів
$report = $orders->groupBy('status')
  ->map(fn($group) => $group->sum('total'));
Tips 21 серпня 2026

filter() vs reject() - очищення даних

Потрібно прибрати частину елементів? Писати складні if не обов'язково.

filter() залишає елементи, що відповідають умові. reject() прибирає елементи, що відповідають умові.

Різниця:

  • filter() - залишає truthy
  • reject() - прибирає truthy
  • Обидва повертають нову колекцію

Розширено:

Для простих порівнянь краще where(), whereIn(), whereBetween().

Порада: filter() без callback прибирає всі falsy (null, false, 0, '', []).

// filter() - тільки активні
$active = $users->filter(fn($u) => $u->active === true);

// reject() - видалити неактивних
$active = $users->reject(fn($u) => $u->active === false);

// filter() без callback
$values = collect([1, 2, null, 3, false, '', 4]);
$cleaned = $values->filter();
// [1, 2, 3, 4]

// where()
$admins = $users->where('role', 'admin');
$verified = $users->where('email_verified_at', '!=', null);

// whereIn()
$staff = $users->whereIn('role', ['admin', 'moderator']);

// whereBetween()
$recent = $posts->whereBetween('created_at', [
  now()->subDays(7),
  now()
]);

// Комбінування фільтрів
$result = $users
  ->where('active', true)
  ->whereIn('role', ['admin', 'editor'])
  ->filter(fn($u) => $u->posts_count > 10);
Queue::forward()
Новини 21 серпня 2026

Queue::forward(): маршрутизація Laravel-черг в одному місці

Laravel 13.26 отримав метод Queue::forward(), який дозволяє перенаправляти черги та з'єднання централізовано. Тепер можна змінювати призначення черг без редагування десятків файлів - особливо корисно при міграції між Redis та хмарними сервісами або розділенні навантаження.

8
Laravel Tackle
Новини 21 серпня 2026

Laravel Tackle: AI-агент для кодування всередині вашого Laravel-додатка

Laravel Tackle - пакет від Джордана Далтона, що запускає AI-агента як Artisan-команди всередині вашого додатка. Він інтегрується з фреймворком, може редагувати код, виправляти помилки, переглядати pull request'и та навіть самостійно лікувати невдалі черги завдань.

6
Mailables Viewer
Новини 21 серпня 2026

Statamic Mailables Viewer - попередній перегляд Laravel-листів у Control Panel

Jack McDade випустив безплатний аддон Mailables Viewer для Statamic, який автоматично знаходить усі Laravel-mailables у проєкті та дозволяє переглядати їх прямо в адмінці без додаткових preview-роутів та налаштувань.

5
Tips 19 серпня 2026

chunk() - поділ даних на частини

Потрібно обробити 10 000 елементів? Або API обмежує 100 запитів за хвилину?

chunk() розбиває колекцію на менші групи.

Сценарії:

  • Обмеження API
  • Пакетна обробка
  • Керування пам'яттю
  • Прогрес-бар

Відмінність від query chunk():

Collection chunk() працює з уже завантаженими даними. Query chunk() завантажує дані з бази порціями.

Порада: поєднувати з sleep() для API rate limit.

// Поділ на частини по 100
$users = User::all();
$users->chunk(100)->each(function ($batch) {
  $this->sendBatchEmail($batch);
});

// API rate limit
$products = collect($apiProducts);
$products->chunk(50)->each(function ($batch) {
  $this->syncToDatabase($batch);
  sleep(1);
});

// Прогрес
$done = 0;

$users->chunk(100)->each(function ($batch) use (&$done) {
  $batch->each(fn($u) => $this->process($u));
  $done += $batch->count();
  echo "Progress: {$done}\n";
});

// Комбінування з іншими методами
$users->chunk(100)->map(function ($chunk) {
  return $chunk->pluck('email');
});

Матеріали за темою «Laravel»: усе, що ми писали про це українською. Нижче - суміжні теми, якщо шукаєте ширше.

Зараз опубліковано 150 матеріалів від 3 авторів. Останній матеріал - 12 вересня 2026.