Загрузка...

Валидация данных в Laravel

laravel cover

В Laravel, атрибуты валидации данных используются для определения правил валидации для полей формы. Ниже приведены все атрибуты валидации с описанием:

1. required

  • Описание: Поле обязательно для заполнения.
  • Пример: required

2. string

  • Описание: Поле должно быть строкой.
  • Пример: string

3. integer

  • Описание: Поле должно быть целым числом.
  • Пример: integer

4. boolean

  • Описание: Поле должно быть логическим значением (true или false).
  • Пример: boolean

5. array

  • Описание: Поле должно быть массивом.
  • Пример: array

6. accepted

  • Описание: Поле должно быть подтверждено (например, checkbox).
  • Пример: accepted

7. active_url

  • Описание: Поле должно быть активным URL-адресом.
  • Пример: active_url

8. after

  • Описание: Поле должно быть датой после указанной даты.
  • Пример: after:2022-01-01

9. after_or_equal

  • Описание: Поле должно быть датой после или равной указанной дате.
  • Пример: after_or_equal:2022-01-01

10. alpha

  • Описание: Поле должно содержать только буквы.
  • Пример: alpha

11. alpha_dash

  • Описание: Поле должно содержать только буквы, цифры и дефисы.
  • Пример: alpha_dash

12. alpha_num

  • Описание: Поле должно содержать только буквы и цифры.
  • Пример: alpha_num

13. array

  • Описание: Поле должно быть массивом.
  • Пример: array

14. before

  • Описание: Поле должно быть датой до указанной даты.
  • Пример: before:2022-01-01

15. before_or_equal

  • Описание: Поле должно быть датой до или равной указанной дате.
  • Пример: before_or_equal:2022-01-01

16. between

  • Описание: Поле должно быть между указанными значениями.
  • Пример: between:1,10

17. boolean

  • Описание: Поле должно быть логическим значением (true или false).
  • Пример: boolean

18. confirmed

  • Описание: Поле должно быть подтверждено (например, подтверждение пароля).
  • Пример: confirmed

19. date

  • Описание: Поле должно быть датой.
  • Пример: date

20. date_format

  • Описание: Поле должно быть датой в указанном формате.
  • Пример: date_format:Y-m-d

21. different

  • Описание: Поле должно быть khácным от указанного поля.
  • Пример: different:password

22. digits

  • Описание: Поле должно содержать указанное количество цифр.
  • Пример: digits:10

23. digits_between

  • Описание: Поле должно содержать количество цифр между указанными значениями.
  • Пример: digits_between:1,10

24. email

  • Описание: Поле должно быть электронной почтой.
  • Пример: email

25. exists

  • Описание: Поле должно существовать в указанной таблице.
  • Пример: exists:users,id

26. image

  • Описание: Поле должно быть изображением.
  • Пример: image

27. in

  • Описание: Поле должно быть одним из указанных значений.
  • Пример: in:1,2,3

28. in_array

  • Описание: Поле должно быть одним из значений в указанном массиве.
  • Пример: in_array:array

29. integer

  • Описание : Поле должно быть целым числом.
  • Пример: integer

30. ip

  • Описание: Поле должно быть IP-адресом.
  • Пример: ip

31. ipv4

  • Описание: Поле должно быть IPv4-адресом.
  • Пример: ipv4

32. ipv6

  • Описание: Поле должно быть IPv6-адресом.
  • Пример: ipv6

33. json

  • Описание: Поле должно быть JSON-строкой.
  • Пример: json

34. max

  • Описание: Поле должно быть не более указанного значения.
  • Пример: max:10

35. mimes

  • Описание: Поле должно быть одним из указанных MIME-типов.
  • Пример: mimes:jpeg,png

36. mimetypes

  • Описание: Поле должно быть одним из указанных MIME-типов.
  • Пример: mimetypes:jpeg,png

37. min

  • Описание: Поле должно быть не менее указанного значения.
  • Пример: min:10

38. not_in

  • Описание: Поле должно быть не одним из указанных значений.
  • Пример: not_in:1,2,3

39. not_regex

  • Описание: Поле должно не соответствовать указанному регулярному выражению.
  • Пример: not_regex:/^foo$/

40. numeric

  • Описание: Поле должно быть числом.
  • Пример: numeric

41. present

  • Описание: Поле должно быть присутствовать в запросе.
  • Пример: present

42. regex

  • Описание: Поле должно соответствовать указанному регулярному выражению.
  • Пример: regex:/^foo$/

43. required_if

  • Описание: Поле обязательно для заполнения, если указанное поле имеет указанное значение.
  • Пример: required_if:foo,bar

44. required_unless

  • Описание: Поле обязательно для заполнения, если указанное поле не имеет указанного значения.
  • Пример: required_unless:foo,bar

45. required_with

  • Описание: Поле обязательно для заполнения, если указанное поле присутствует в запросе.
  • Пример: required_with:foo

46. required_with_all

  • Описание: Поле обязательно для заполнения, если все указанные поля присутствуют в запросе.
  • Пример: required_with_all:foo,bar

47. required_without

  • Описание: Поле обязательно для заполнения, если указанное поле не присутствует в запросе.
  • Пример: required_without:foo

48. required_without_all

  • Описание: Поле обязательно для заполнения, если ни одно из указанных полей не присутствует в запросе.
  • Пример: required_without_all:foo,bar

49. same

  • Описание: Поле должно быть таким же, как указанное поле.
  • Пример: same:foo

50. size

  • Описание: Поле должно иметь указанный размер.
  • Пример: size:10

51. starts_with

  • Описание: Поле должно начинаться с указанной строки.
  • Пример: starts_with:foo

52. string

  • Описание: Поле должно быть строкой.
  • Пример: string

53. timezone

  • Описание: Поле должно быть часовым поясом.
  • Пример: timezone

54. unique

  • Описание: Поле должно быть уникальным в указанной таблице.
  • Пример: unique:users,email

55. uploaded

  • Описание: Поле должно быть загруженным файлом.
  • Пример: uploaded

56. url

  • Описание: Поле должно быть URL-адресом.
  • Пример: url

57. uuid

  • Описание: Поле должно быть UUID .
  • Пример: uuid

Проверка на уникальность:

  • unique: Поле должно быть уникальным в указанной таблице.
  • unique:users,email: Поле должно быть уникальным в таблице users по столбцу email.

 

Пример использования:


use Illuminate\Validation\Rules\Unique;

$validator = Validator::make($request->all(), [
    'email' => [
        'required',
        'email',
        Rule::unique('users', 'email')->ignore($user->id),
    ],
]);

В этом примере, поле email должно быть уникальным в таблице users по столбцу email, но игнорируя запись с id равным $user->id.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *