Can also be passed as an array
$validatedData = $request->validate([
'title' => ['required', 'unique:posts', 'max:255'],
'body' => ['required'],
]);
#after:date
Field must be a value after a given date.
'start_date' => 'required|date|after:tomorrow'
Instead of a date string, you may specify another field to compare against the date
'finish_date' => 'required|date|after:start_date'
See before:date
#after_or_equal:date
Field must be a value after or equal to the given date.
See after:date
#before:date
Field must be a value preceding the given date.
The name of another field may be supplied as the value of date.
See after:date
#alpha_num
Field must be entirely alpha-numeric characters
#boolean
Field must be able to be cast as a boolean.
Accepted input are true, false, 1, 0, "1", and "0"
#confirmed
Field must have a matching field of {field}_confirmation.
For example, if the field is password, a matching password_confirmation field must be present
#current_password
Field must match the authenticated user's password.
#date
Field must be a valid, non-relative date according to the strtotime PHP function.
#email
Field must be formatted as an email address.
#file
Field must be a successfully uploaded file.
See: Uploaded Files
#max:value
Field must be less than or equal to a maximum value.
Strings, numerics, arrays, and files are evaluated like the size rule.
#min:value
Field must have a minimum value.
Strings, numerics, arrays, and files are evaluated like the size rule.
#mimetypes:text/plain,...
File must match one of the given MIME types:
'video' => 'mimetypes:video/avi,video/mpeg,video/quicktime'
File's contents will be read and the framework will attempt to guess the
MIME type, regardless of the client's provided MIME type.
#mimes:foo,bar,...
Field must have a MIME type corresponding to one of the listed extensions.
'photo' => 'mimes:jpg,bmp,png'
File's contents will be read and the framework will attempt to guess the
MIME type, regardless of the client's provided MIME type.
Full listing of MIME types & extensions
#nullable
Field may be null.
#numeric
Field must be numeric.
#password
Field must match the authenticated user's password.
#prohibited
Field must be empty or not present.
#prohibited_if:anotherfield,value,...
Field must be empty or not present if the
anotherfield field is equal to any value.
#prohibited_unless:anotherfield,value,...
Field must be empty or not present unless the
anotherfield field is equal to any value.
#required
Field must be present in the input data and not empty.
A field is considered "empty" if one of the following conditions are true:
- The value is
null.
- The value is an empty string.
- The value is an empty array or empty
Countable object.
- The value is an uploaded file with no path.
#required_with:foo,bar,...
Field must be present and not empty, only if any of the other
specified fields are present and not empty
#size:value
Field must have a size matching the given value.
- For strings: number of characters
- For numeric data: integer value (must also have the
numeric or integer rule).
- For arrays: count of the array
- For files: file size in kilobytes
'title' => 'size:12';
'seats' => 'integer|size:10';
'tags' => 'array|size:5';
'image' => 'file|size:512';
#unique:table,column
Field must not exist within the given database table
#url
Field must be a valid URL
See all available rules