> 백엔드 개발 > PHP 튜토리얼 > Laravel에서 배열을 검증하는 방법: 빈 제출 및 모범 사례?

Laravel에서 배열을 검증하는 방법: 빈 제출 및 모범 사례?

Barbara Streisand
풀어 주다: 2024-11-27 16:29:11
원래의
289명이 탐색했습니다.

How to Validate Arrays in Laravel: Empty Submissions and Best Practices?

Laravel에서 배열 유효성 검사

다음 코드를 사용하여 Laravel에서 배열의 유효성을 검사하려고 할 때:

$validator = Validator::make($request->all(), [
    "name.*" => 'required|distinct|min:3',
    "amount.*" => 'required|integer|min:1',
    "description.*" => "required|string"
]);
로그인 후 복사

빈 POST 제출이 유효한 것으로 잘못 인식되어 잘못된 오류가 발생하는 예기치 않은 시나리오가 발생할 수 있습니다. 긍정적입니다.

이러한 혼란은 코드의 별표 기호(*)가 배열 자체가 아닌 배열 내의 값을 확인하기 위한 것이기 때문에 발생합니다. 이 문제를 해결하려면 배열이 있는지 확인하도록 유효성 검사 규칙을 수정해야 합니다.

$validator = Validator::make($request->all(), [
    "names"    => "required|array|min:3",
    "names.*"  => "required|string|distinct|min:3",
]);
로그인 후 복사

이 조정된 코드에서:

  • "names"는 "names"를 보장합니다. POST 데이터의 " 키가 존재하고 배열을 포함합니다.
  • "names.*"는 "names" 배열 내의 개별 값을 검증하여 3자 이상의 고유한 문자열이 필요합니다.

Laravel 5.5부터는 단순화된 접근 방식을 사용할 수 있습니다.

$data = $request->validate([
    "names"    => "required|array|min:3",
    "names.*"  => "required|string|distinct|min:3",
]);
로그인 후 복사

이 간결한 구문은 객체를 요청하면 $validator 중개자가 필요하지 않습니다.

위 내용은 Laravel에서 배열을 검증하는 방법: 빈 제출 및 모범 사례?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿