РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
583 of 1392 menu

Правило array

Правило array применяется к полю формы и проверяет, что переданное значение является массивом. Это правило полезно при работе с множественными полями ввода, например, с флажками или многократным выбором. Оно не требует дополнительных параметров и может комбинироваться с другими правилами для валидации элементов массива.

Синтаксис

<?php $rules = [ 'field_name' => 'array', ]; ?>

Пример

Давайте создадим запрос на валидацию, который требует, чтобы поле 'tags' было массивом:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class ArticleController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'tags' => 'array', ]); if ($validator->fails()) { return response()->json($validator->errors(), 422); } return response()->json(['message' => 'Validation passed']); } } ?>

Пример

Отправим правильные данные с массивом:

<?php // Отправка POST запроса на /articles $data = ['tags' => ['laravel', 'php', 'vue']]; ?>

Результат выполнения кода:

"Validation passed"

Пример

Отправим неверные данные, где поле 'tags' является строкой:

<?php // Отправка POST запроса на /articles $data = ['tags' => 'laravel']; ?>

Результат выполнения кода:

{ "tags": ["The tags field must be an array."] }

Пример

Правило array часто используется вместе с правилом min для проверки минимального количества элементов в массиве:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class ArticleController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'tags' => 'array|min:1', ]); if ($validator->fails()) { return response()->json($validator->errors(), 422); } return response()->json(['message' => 'Validation passed']); } } ?>

Результат выполнения кода при пустом массиве:

{ "tags": ["The tags field must have at least 1 items."] }

Пример

Также правило array можно комбинировать с правилом max для ограничения максимального количества элементов:

<?php namespace AppHttpControllers; use IlluminateHttpRequest; use IlluminateSupportFacadesValidator; class ArticleController extends Controller { public function store(Request $request) { $validator = Validator::make($request->all(), [ 'selected_ids' => 'array|max:5', ]); if ($validator->fails()) { return response()->json($validator->errors(), 422); } return response()->json(['message' => 'Validation passed']); } } ?>

Смотрите также

  • правило required,
    которое проверяет, что поле присутствует и не пустое
  • правило nullable,
    которое позволяет полю иметь значение null
  • правило min,
    которое проверяет минимальное значение или количество элементов
  • правило max,
    которое проверяет максимальное значение или количество элементов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить