В 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.