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

Tips & Tricks: статті за тегом «Очищення даних»

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

No results.
Tips 09 жовтня 2026

`prepareForValidation()` - чистимо дані до валідації

Телефон приходить як "(123) 456-7890", а в БД потрібен "1234567890".

Санітизація в контролері? Це вже запізно.

prepareForValidation() змінює дані запиту до запуску правил.

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

  • Нормалізація телефону
  • Прибирання пробілів
  • Конвертація типів
  • Додавання обчислюваних полів

Важливо:

Виконується до валідації — ідеально для нормалізації.

Порада: merge() додає/оновлює поля, replace() повністю замінює масив даних.

protected function prepareForValidation()
{
  $this->merge([
    'phone' => preg_replace('/[^0-9]/', '', $this->phone),
    'slug' => Str::slug($this->title),
    'price' => (float) $this->price,
    'name' => trim($this->name),
    'email' => strtolower(trim($this->email)),
  ]);
}
Tips 07 жовтня 2026

`exclude()` - прибираємо поля з валідованих даних

У формі є CSRF-токен та допоміжні поля. Ви не хочете, щоб вони потрапили у validated().

exclude_if, exclude_unless прибирають поля умовно.

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

  • Прибрати UI-only поля
  • Виключити поля залежно від ролі
  • Не логувати чутливі поля
  • Тримати валідовані дані “чистими”

Доступні правила:

  • exclude — завжди прибирає
  • exclude_if — прибирає, якщо умова істинна
  • exclude_unless — прибирає, якщо умова хибна
  • exclude_with — прибирає, якщо інше поле присутнє

Порада: краще за ручний unset() після валідації.

public function rules()
{
  return [
    'name' => 'required',
    'admin_notes' => 'exclude', // не потрапить у validated()
    'is_admin' => 'exclude_unless:user.role,admin',
    'card_number' => 'exclude_if:payment_method,cash',
    'paypal_email' => 'exclude_if:payment_method,card',
  ];
}

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

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