Laravel 開発: Laravel Validation を使用してリクエストデータを検証する方法は?
Laravel は現在最も人気のある PHP フレームワークの 1 つであり、その理由の 1 つは、Laravel Validation を含む多くの優れたコンポーネントを提供していることです。 Web開発の過程では、フォーム送信など、フロントエンドから送信されたデータが仕様を満たしているかを検証する必要がよくあります。このとき、データ検証にはLaravel Validationコンポーネントを使用する必要があります。
この記事では、Laravel Validationの基本的な使い方と事例を紹介します。
コントローラーのバリデーターの紹介:
use IlluminateSupportFacadesValidator;
Laravel 検証サポート A必須、電子メール、日付などのさまざまな検証ルール。ニーズに応じて選択できます。次の表に、一般的に使用されるルールをいくつか示します。
Rule | Description |
---|---|
必須 | 必須 |
メール形式 | |
date | 日付形式 |
通常の一致 | |
最大長 | |
最小長 |
public function validate(Request $request) { $validator = Validator::make($request->all(), [ 'name' => 'required|max:255', 'email' => 'required|email|unique:users|max:255', 'password' => 'required|min:6|max:255', ]); if ($validator->fails()) { return redirect('register') ->withErrors($validator) ->withInput(); } // 验证通过,执行代码 }
public function rules() { return [ 'name' => 'required|max:255', 'email' => 'required|email|unique:users|max:255', 'password' => 'required|min:6|max:255', ]; } public function register(Request $request) { $this->validate($request, $this->rules()); // 验证通过,执行代码 }
if ($validator->fails()) { return redirect('register') ->withErrors($validator) ->withInput(); }
@if ($errors->has('name')) <span class="help-block"> <strong>{{ $errors->first('name') }}</strong> </span> @endif
public function rules() { return [ 'name' => 'required|max:255', 'email' => 'required|email|unique:users|max:255', 'password' => 'required|min:6|max:255', ]; } public function messages() { return [ 'name.required' => '名称不能为空', 'email.required' => '邮箱不能为空', 'email.email' => '请输入正确的邮箱地址', 'email.unique' => '该邮箱已经被注册', 'password.required' => '密码不能为空', 'password.max' => '密码长度不能超过:max个字符', ]; } public function register(Request $request) { $validator = Validator::make($request->all(), $this->rules(), $this->messages()); if ($validator->fails()) { return redirect('register') ->withErrors($validator) ->withInput(); } // 验证通过,执行代码 }
以上がLaravel開発: Laravel Validationを使用してリクエストデータを検証する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。