Валидация в Laravel
Валидация в Laravel: разбираем тему за темой. В каждом разделе рабочий код и объяснение, зачем нужно правило, а не только как его вызвать.
Разделы
- Быстрый старт Карта трёх точек входа в валидацию Laravel: $request->validate(), FormRequest и Validator::make. Подводные камни AJAX vs HTML-ответов, unique при update, ошибки массивов в Blade и тестирование API через postJson.
- Правила Полный справочник правил валидации Laravel 13 с примерами: required, nullable, sometimes, bail, in, enum, confirmed, prohibited и другие. Разбор различий между похожими правилами.
- Строки и числа Правила валидации строк, чисел, email, URL, UUID и регулярных выражений в Laravel 13. Примеры кода, типичные ошибки и приемы.
- Даты Правила валидации дат, времени, таймзон и временных диапазонов в Laravel 13. date, date_format, after, before, timezone с примерами.
- Массивы и JSON Валидация массивов, вложенных структур и JSON в Laravel 13: wildcard, dot notation, array keys, list, distinct, contains, Rule::forEach, json. Полное руководство.
- Файлы и изображения Правила file, image, mimes, mimetypes, extensions, dimensions в Laravel 13. Загрузка PDF, xlsx, видео. Fluent-билдер File с примерами.
- Unique и Exists Правила unique и exists в Laravel 13: проверка уникальности, существования записей, ignore при обновлении, составные ключи, soft deletes, not_in, foreign key. Полное руководство.
- Пароли Password::min(), confirmed, current_password, same, uncompromised. Полные примеры регистрации, смены пароля и сброса.
- Form Request Выделенные классы валидации в Laravel 13: rules, authorize, prepareForValidation, after, messages. Полные примеры CRUD с Form Request.
- Сообщения об ошибках Кастомные сообщения, локализация, MessageBag API, JSON-ответы, языковые файлы, плейсхолдеры, именованные error bags и тестирование.
- Свои правила Rule-классы, замыкания, implicit-правила, DataAwareRule, ValidatorAwareRule. Примеры: XSS, телефон, бизнес-логика.
- Условная валидация Условная валидация в Laravel 13: required_if, required_with, exclude_if, sometimes, nullable, prohibited, значения по умолчанию. Полное руководство с примерами.