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

Tips & Tricks: статті за тегом «Форми»

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

No results.
Tips 30 вересня 2026

sometimes() - умовні правила валідації

Email обов’язковий… але лише коли тип користувача — customer.

Писати кастомну логіку валідації в контролері? Неохайно.

sometimes() застосовує правила лише тоді, коли умова істинна.

Як це працює:

  • 1-й аргумент — назва поля
  • 2-й аргумент — правила
  • 3-й аргумент — callback-умова

Коли корисно:

  • Поле обов’язкове залежно від іншого поля
  • Різні правила для різних типів користувачів
  • Складна бізнес-логіка у валідації

Порада: складні умови виносьте в окремі методи для читабельності.

$validator = Validator::make($request->all(), [
  'name' => 'required',
  'type' => 'required|in:customer,guest',
]);

$validator->sometimes(
  'email',
  'required|email',
  fn ($input) => $input->type === 'customer'
);

$validator->sometimes(
  ['phone', 'address'],
  'required',
  fn ($input) => $input->type === 'customer'
);

// Складна умова
$validator->sometimes('company_name', 'required', function ($i) {
  return $i->account_type === 'business'
    && $i->annual_revenue > 100000;
});

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

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