PHP
laravel
laravel5.4

【Laravel5.4】色々なバリデーション方法

  • 以下に記すのは実際に挙動を確認したものでリーダブルより若干わかりやすく書いているつもりです
    が、間違っているかもしれませんので基本はリーダブルを参照してください。

必須項目

required

~の場合は必須項目にする(例:×を選択した人はある項目を必須にする)

required_if

// 例:company項目の値がqiitaの場合は対象の項目を必須にする
required_if:company,qiita,

~に値がある場合は~も必須項目にする

required_with

// 例:company項目に値が入力されている場合は対象のemployee_id項目も必須にする
required_with:company,employee_id,

任意項目(空白を許可する)

nullable

メールアドレスのフォーマットチェック

email

最小入力文字数のチェック

min:数字

最大入力文字数のチェック

max:数字

入力桁数のチェック

digits_between|最小値,最大値

// 例:1桁以上3桁以下で入力させたい場合
digits_between:1,3

再入力欄との整合性チェック

confirmed
※このバリデーションを使用する際は再入力項目の名前を~_confirmationのように命名しないと使えません

// 例:パスワード項目で再入力欄を設ける場合
'password'              => 'required|confirmed',
'password_confirmation' => 'required',

正規表現

regex:/[正規表現]/

// 例:半角英数字のみ許可する場合
regex:/^[a-zA-Z0-9]+$/

数値チェック

numeric

項目が有効(disabled属性なし)の時、必須

sometimes

※逆にdisabled属性ありの場合は通ってしまうのであんまり使わない方がいいかもしれません・・・
required_ifの方がいいかもしれません)

※また追加していく予定です。