Laravel – validation – 検証ルール

概要

主なバリデーションルールを整理する。網羅的な内容はドキュメントを参照。

存在・唯一性

required

パラメーターが入力されているか。

required

unique

データベースの指定フィールド内で唯一か。

unique

サイズ

size/min/max/between

フィールドの種類に応じて、特定値、最小値・最大値、値の範囲を検証。

size:サイズ
min:最小サイズ
max:最大サイズ
between:最小サイズ,最大サイズ

サイズはフィールドの種類によって解釈。

  • 文字列の場合は文字数
  • 数値の場合は整数値
  • ファイルの場合はキロバイト単位のファイルサイズ

正規表現

regex

入力が正規表現パターンに一致するかどうか。

regex:/正規表現/

数値形式

integer/numeric

入力が整数か/数値か

digits/digits_between

桁数が合致しているか/範囲内か。

digits:桁数
digits_between:最小桁数,最大桁数

文字列形式

string

入力が文字列かどうか。

string

email/url/active_url/ip

e-mailアドレス形式、URL形式か/有効なURLか、IPアドレス形式か。

email
url
active_url
ip

json

JSON文字列か。

json

timezone

タイムゾーンの文字列か。

timezone

日付

date

日付かどうか。日付の存在チェックも行う。たとえば2020/2/29は妥当だが、2021/2/29はエラーとなる。

date

date_format

指定した日付・時刻フォーマットか(YYYY/MM/ddH:iなど)。

date:日付・時刻フォーマット

before/after

指定した日付より前か/後か。現在を基準にする場合はnow

before:now
after:2020-3-31

before_or_equal/after_or_equal

指定した日付以前か/以後か。

before_or_equal:now
after_or_equal:2020-3-31

ファイル確認

file/image

ファイルかどうか。

file

画像ファイル(jpg,png,bmp,gif,svg)かどうか。

image

mimes

指定した拡張子か。

mimes:拡張子,拡張子,...

dimensions

画像パラメーターが指定した値か。

dimensions:属性=値,属性=値,...

属性の種類はmin_widthmax_widthmin_heightwidthheightratio

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です