Validator
class Validator implements Validator (View source)
Traits
FormatsMessages |
ValidatesAttributes |
ReplacesAttributes |
Properties
protected Translator | $translator | The Translator implementation. | |
protected Container | $container | The container instance. | |
protected PresenceVerifierInterface | $presenceVerifier | The Presence Verifier implementation. | |
protected array | $failedRules | The failed validation rules. | |
protected MessageBag | $messages | The message bag instance. | |
protected array | $data | The data under validation. | |
protected array | $initialRules | The initial rules provided. | |
protected array | $rules | The rules to be applied to the data. | |
protected string | $currentRule | The current rule that is validating. | |
protected array | $implicitAttributes | The array of wildcard attributes with their asterisks expanded. | |
protected array | $after | All of the registered "after" callbacks. | |
array | $customMessages | The array of custom error messages. | |
array | $fallbackMessages | The array of fallback error messages. | |
array | $customAttributes | The array of custom attribute names. | |
array | $customValues | The array of custom displayable values. | |
array | $extensions | All of the custom validator extensions. | |
array | $replacers | All of the custom replacer extensions. | |
protected array | $fileRules | The validation rules that may be applied to files. | |
protected array | $implicitRules | The validation rules that imply the field is required. | |
protected array | $dependentRules | The validation rules which depend on other fields as parameters. | |
protected array | $sizeRules | The size related validation rules. | |
protected array | $numericRules | The numeric related validation rules. |
Methods
string | replaceBetween(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the between rule. | from ReplacesAttributes |
string | replaceDateFormat(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the date_format rule. | from ReplacesAttributes |
string | replaceDifferent(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the different rule. | from ReplacesAttributes |
string | replaceDigits(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the digits rule. | from ReplacesAttributes |
string | replaceDigitsBetween(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the digits (between) rule. | from ReplacesAttributes |
string | replaceMin(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the min rule. | from ReplacesAttributes |
string | replaceMax(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the max rule. | from ReplacesAttributes |
string | replaceIn(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the in rule. | from ReplacesAttributes |
string | replaceNotIn(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the not_in rule. | from ReplacesAttributes |
string | replaceInArray(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the in_array rule. | from ReplacesAttributes |
string | replaceMimetypes(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the mimetypes rule. | from ReplacesAttributes |
string | replaceMimes(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the mimes rule. | from ReplacesAttributes |
string | replaceRequiredWith(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_with rule. | from ReplacesAttributes |
string | replaceRequiredWithAll(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_with_all rule. | from ReplacesAttributes |
string | replaceRequiredWithout(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_without rule. | from ReplacesAttributes |
string | replaceRequiredWithoutAll(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_without_all rule. | from ReplacesAttributes |
string | replaceSize(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the size rule. | from ReplacesAttributes |
string | replaceGt(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the gt rule. | from ReplacesAttributes |
string | replaceLt(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the lt rule. | from ReplacesAttributes |
string | replaceGte(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the gte rule. | from ReplacesAttributes |
string | replaceLte(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the lte rule. | from ReplacesAttributes |
string | replaceRequiredIf(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_if rule. | from ReplacesAttributes |
string | replaceRequiredUnless(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the required_unless rule. | from ReplacesAttributes |
string | replaceSame(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the same rule. | from ReplacesAttributes |
string | replaceBefore(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the before rule. | from ReplacesAttributes |
string | replaceBeforeOrEqual(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the before_or_equal rule. | from ReplacesAttributes |
string | replaceAfter(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the after rule. | from ReplacesAttributes |
string | replaceAfterOrEqual(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the after_or_equal rule. | from ReplacesAttributes |
string | replaceDimensions(string $message, string $attribute, string $rule, array $parameters) Replace all place-holders for the dimensions rule. | from ReplacesAttributes |
string | getMessage(string $attribute, string $rule) Get the validation message for an attribute and rule. | from FormatsMessages |
string|null | getInlineMessage(string $attribute, string $rule) Get the proper inline error message for standard and size rules. | from FormatsMessages |
string|null | getFromLocalArray(string $attribute, string $lowerRule, array|null $source = null) Get the inline message for a rule if it exists. | from FormatsMessages |
string | getCustomMessageFromTranslator(string $key) Get the custom error message from translator. | from FormatsMessages |
string | getWildcardCustomMessages(array $messages, string $search, string $default) Check the given messages for a wildcard key. | from FormatsMessages |
string | getSizeMessage(string $attribute, string $rule) Get the proper error message for an attribute and size rule. | from FormatsMessages |
string | getAttributeType(string $attribute) Get the data type of the given attribute. | from FormatsMessages |
string | makeReplacements(string $message, string $attribute, string $rule, array $parameters) Replace all error message place-holders with actual values. | from FormatsMessages |
string | getDisplayableAttribute(string $attribute) Get the displayable name of the attribute. | from FormatsMessages |
string | getAttributeFromTranslations(string $name) Get the given attribute from the attribute translations. | from FormatsMessages |
string | replaceAttributePlaceholder(string $message, string $value) Replace the :attribute placeholder in the given message. | from FormatsMessages |
string | replaceInputPlaceholder(string $message, string $attribute) Replace the :input placeholder in the given message. | from FormatsMessages |
string | getDisplayableValue(string $attribute, mixed $value) Get the displayable name of the value. | from FormatsMessages |
array | getAttributeList(array $values) Transform an array of attributes to their displayable form. | from FormatsMessages |
string|null | callReplacer(string $message, string $attribute, string $rule, array $parameters, Validator $validator) Call a custom validator message replacer. | from FormatsMessages |
string | callClassBasedReplacer(string $callback, string $message, string $attribute, string $rule, array $parameters, Validator $validator) Call a class based validator message replacer. | from FormatsMessages |
bool | validateAccepted(string $attribute, mixed $value) Validate that an attribute was "accepted". | from ValidatesAttributes |
bool | validateActiveUrl(string $attribute, mixed $value) Validate that an attribute is an active URL. | from ValidatesAttributes |
bool | validateBail() "Break" on first validation fail. | from ValidatesAttributes |
bool | validateBefore(string $attribute, mixed $value, array $parameters) Validate the date is before a given date. | from ValidatesAttributes |
bool | validateBeforeOrEqual(string $attribute, mixed $value, array $parameters) Validate the date is before or equal a given date. | from ValidatesAttributes |
bool | validateAfter(string $attribute, mixed $value, array $parameters) Validate the date is after a given date. | from ValidatesAttributes |
bool | validateAfterOrEqual(string $attribute, mixed $value, array $parameters) Validate the date is equal or after a given date. | from ValidatesAttributes |
bool | compareDates(string $attribute, mixed $value, array $parameters, string $operator) Compare a given date against another using an operator. | from ValidatesAttributes |
string|null | getDateFormat(string $attribute) Get the date format for an attribute if it has one. | from ValidatesAttributes |
int | getDateTimestamp(mixed $value) Get the date timestamp. | from ValidatesAttributes |
bool | checkDateTimeOrder(string $format, string $first, string $second, string $operator) Given two date/time strings, check that one is after the other. | from ValidatesAttributes |
DateTime|null | getDateTimeWithOptionalFormat(string $format, string $value) Get a DateTime instance from a string. | from ValidatesAttributes |
DateTime|null | getDateTime(string $value) Get a DateTime instance from a string with no format. | from ValidatesAttributes |
bool | isTestingRelativeDateTime(mixed $value) Check if the given value should be adjusted to Carbon::getTestNow(). | from ValidatesAttributes |
bool | validateAlpha(string $attribute, mixed $value) Validate that an attribute contains only alphabetic characters. | from ValidatesAttributes |
bool | validateAlphaDash(string $attribute, mixed $value) Validate that an attribute contains only alpha-numeric characters, dashes, and underscores. | from ValidatesAttributes |
bool | validateAlphaNum(string $attribute, mixed $value) Validate that an attribute contains only alpha-numeric characters. | from ValidatesAttributes |
bool | validateArray(string $attribute, mixed $value) Validate that an attribute is an array. | from ValidatesAttributes |
bool | validateBetween(string $attribute, mixed $value, array $parameters) Validate the size of an attribute is between a set of values. | from ValidatesAttributes |
bool | validateBoolean(string $attribute, mixed $value) Validate that an attribute is a boolean. | from ValidatesAttributes |
bool | validateConfirmed(string $attribute, mixed $value) Validate that an attribute has a matching confirmation. | from ValidatesAttributes |
bool | validateDate(string $attribute, mixed $value) Validate that an attribute is a valid date. | from ValidatesAttributes |
bool | validateDateFormat(string $attribute, mixed $value, array $parameters) Validate that an attribute matches a date format. | from ValidatesAttributes |
bool | validateDateEquals(string $attribute, mixed $value, array $parameters) Validate that an attribute is equal to another date. | from ValidatesAttributes |
bool | validateDifferent(string $attribute, mixed $value, array $parameters) Validate that an attribute is different from another attribute. | from ValidatesAttributes |
bool | validateDigits(string $attribute, mixed $value, array $parameters) Validate that an attribute has a given number of digits. | from ValidatesAttributes |
bool | validateDigitsBetween(string $attribute, mixed $value, array $parameters) Validate that an attribute is between a given number of digits. | from ValidatesAttributes |
bool | validateDimensions(string $attribute, mixed $value, array $parameters) Validate the dimensions of an image matches the given values. | from ValidatesAttributes |
bool | failsBasicDimensionChecks(array $parameters, int $width, int $height) Test if the given width and height fail any conditions. | from ValidatesAttributes |
bool | failsRatioCheck(array $parameters, int $width, int $height) Determine if the given parameters fail a dimension ratio check. | from ValidatesAttributes |
bool | validateDistinct(string $attribute, mixed $value, array $parameters) Validate an attribute is unique among other values. | from ValidatesAttributes |
bool | validateEmail(string $attribute, mixed $value) Validate that an attribute is a valid e-mail address. | from ValidatesAttributes |
bool | validateExists(string $attribute, mixed $value, array $parameters) Validate the existence of an attribute value in a database table. | from ValidatesAttributes |
int | getExistCount(mixed $connection, string $table, string $column, mixed $value, array $parameters) Get the number of records that exist in storage. | from ValidatesAttributes |
bool | validateUnique(string $attribute, mixed $value, array $parameters) Validate the uniqueness of an attribute value on a given database table. | from ValidatesAttributes |
array | getUniqueIds(array $parameters) Get the excluded ID column and value for the unique rule. | from ValidatesAttributes |
int | prepareUniqueId(mixed $id) Prepare the given ID for querying. | from ValidatesAttributes |
array | getUniqueExtra(array $parameters) Get the extra conditions for a unique rule. | from ValidatesAttributes |
array | parseTable(string $table) Parse the connection / table for the unique / exists rules. | from ValidatesAttributes |
bool | getQueryColumn(array $parameters, string $attribute) Get the column name for an exists / unique query. | from ValidatesAttributes |
string | guessColumnForQuery(string $attribute) Guess the database column from the given attribute name. | from ValidatesAttributes |
array | getExtraConditions(array $segments) Get the extra conditions for a unique / exists rule. | from ValidatesAttributes |
bool | validateFile(string $attribute, mixed $value) Validate the given value is a valid file. | from ValidatesAttributes |
bool | validateFilled(string $attribute, mixed $value) Validate the given attribute is filled if it is present. | from ValidatesAttributes |
bool | validateGt(string $attribute, mixed $value, array $parameters) Validate that an attribute is greater than another attribute. | from ValidatesAttributes |
bool | validateLt(string $attribute, mixed $value, array $parameters) Validate that an attribute is less than another attribute. | from ValidatesAttributes |
bool | validateGte(string $attribute, mixed $value, array $parameters) Validate that an attribute is greater than or equal another attribute. | from ValidatesAttributes |
bool | validateLte(string $attribute, mixed $value, array $parameters) Validate that an attribute is less than or equal another attribute. | from ValidatesAttributes |
bool | validateImage(string $attribute, mixed $value) Validate the MIME type of a file is an image MIME type. | from ValidatesAttributes |
bool | validateIn(string $attribute, mixed $value, array $parameters) Validate an attribute is contained within a list of values. | from ValidatesAttributes |
bool | validateInArray(string $attribute, mixed $value, array $parameters) Validate that the values of an attribute is in another attribute. | from ValidatesAttributes |
bool | validateInteger(string $attribute, mixed $value) Validate that an attribute is an integer. | from ValidatesAttributes |
bool | validateIp(string $attribute, mixed $value) Validate that an attribute is a valid IP. | from ValidatesAttributes |
bool | validateIpv4(string $attribute, mixed $value) Validate that an attribute is a valid IPv4. | from ValidatesAttributes |
bool | validateIpv6(string $attribute, mixed $value) Validate that an attribute is a valid IPv6. | from ValidatesAttributes |
bool | validateJson(string $attribute, mixed $value) Validate the attribute is a valid JSON string. | from ValidatesAttributes |
bool | validateMax(string $attribute, mixed $value, array $parameters) Validate the size of an attribute is less than a maximum value. | from ValidatesAttributes |
bool | validateMimes(string $attribute, mixed $value, array $parameters) Validate the guessed extension of a file upload is in a set of file extensions. | from ValidatesAttributes |
bool | validateMimetypes(string $attribute, mixed $value, array $parameters) Validate the MIME type of a file upload attribute is in a set of MIME types. | from ValidatesAttributes |
bool | shouldBlockPhpUpload(mixed $value, array $parameters) Check if PHP uploads are explicitly allowed. | from ValidatesAttributes |
bool | validateMin(string $attribute, mixed $value, array $parameters) Validate the size of an attribute is greater than a minimum value. | from ValidatesAttributes |
bool | validateNullable() "Indicate" validation should pass if value is null. | from ValidatesAttributes |
bool | validateNotIn(string $attribute, mixed $value, array $parameters) Validate an attribute is not contained within a list of values. | from ValidatesAttributes |
bool | validateNumeric(string $attribute, mixed $value) Validate that an attribute is numeric. | from ValidatesAttributes |
bool | validatePresent(string $attribute, mixed $value) Validate that an attribute exists even if not filled. | from ValidatesAttributes |
bool | validateRegex(string $attribute, mixed $value, array $parameters) Validate that an attribute passes a regular expression check. | from ValidatesAttributes |
bool | validateNotRegex(string $attribute, mixed $value, array $parameters) Validate that an attribute does not pass a regular expression check. | from ValidatesAttributes |
bool | validateRequired(string $attribute, mixed $value) Validate that a required attribute exists. | from ValidatesAttributes |
bool | validateRequiredIf(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when another attribute has a given value. | from ValidatesAttributes |
array | convertValuesToBoolean(array $values) Convert the given values to boolean if they are string "true" / "false". | from ValidatesAttributes |
bool | validateRequiredUnless(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when another attribute does not have a given value. | from ValidatesAttributes |
bool | validateRequiredWith(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when any other attribute exists. | from ValidatesAttributes |
bool | validateRequiredWithAll(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when all other attributes exists. | from ValidatesAttributes |
bool | validateRequiredWithout(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when another attribute does not. | from ValidatesAttributes |
bool | validateRequiredWithoutAll(string $attribute, mixed $value, mixed $parameters) Validate that an attribute exists when all other attributes do not. | from ValidatesAttributes |
bool | anyFailingRequired(array $attributes) Determine if any of the given attributes fail the required test. | from ValidatesAttributes |
bool | allFailingRequired(array $attributes) Determine if all of the given attributes fail the required test. | from ValidatesAttributes |
bool | validateSame(string $attribute, mixed $value, array $parameters) Validate that two attributes match. | from ValidatesAttributes |
bool | validateSize(string $attribute, mixed $value, array $parameters) Validate the size of an attribute. | from ValidatesAttributes |
bool | validateSometimes() "Validate" optional attributes. | from ValidatesAttributes |
bool | validateString(string $attribute, mixed $value) Validate that an attribute is a string. | from ValidatesAttributes |
bool | validateTimezone(string $attribute, mixed $value) Validate that an attribute is a valid timezone. | from ValidatesAttributes |
bool | validateUrl(string $attribute, mixed $value) Validate that an attribute is a valid URL. | from ValidatesAttributes |
mixed | getSize(string $attribute, mixed $value) Get the size of an attribute. | from ValidatesAttributes |
bool | isValidFileInstance(mixed $value) Check that the given value is a valid file instance. | from ValidatesAttributes |
bool | compare(mixed $first, mixed $second, string $operator) Determine if a comparison passes between the given values. | from ValidatesAttributes |
array | parseNamedParameters(array $parameters) Parse named parameters to $key => $value items. | from ValidatesAttributes |
void | requireParameterCount(int $count, array $parameters, string $rule) Require a certain number of parameters to be present. | from ValidatesAttributes |
void | requireSameType(mixed $first, mixed $second) Require comparison values to be of the same type. | from ValidatesAttributes |
void | shouldBeNumeric(string $attribute, string $rule) Adds the existing rule to the numericRules array if the attribute's value is numeric. | from ValidatesAttributes |
void | __construct(Translator $translator, array $data, array $rules, array $messages = [], array $customAttributes = []) Create a new Validator instance. | |
array | parseData(array $data) Parse the data array, converting dots to ->. | |
$this | after(callable|string $callback) Add an after validation callback. | |
bool | passes() Determine if the data passes the validation rules. | |
bool | fails() Determine if the data fails the validation rules. | |
array | validate() Run the validator's rules against its data. | |
void | validateAttribute(string $attribute, string $rule) Validate a given attribute against a rule. | |
bool | dependsOnOtherFields(string $rule) Determine if the given rule depends on other fields. | |
array | getExplicitKeys(string $attribute) Get the explicit keys from an attribute flattened with dot notation. | |
string | getPrimaryAttribute(string $attribute) Get the primary attribute name. | |
array | replaceAsterisksInParameters(array $parameters, array $keys) Replace each field parameter which has asterisks with the given keys. | |
bool | isValidatable(object|string $rule, string $attribute, mixed $value) Determine if the attribute is validatable. | |
bool | presentOrRuleIsImplicit(object|string $rule, string $attribute, mixed $value) Determine if the field is present, or the rule implies required. | |
bool | isImplicit(object|string $rule) Determine if a given rule implies the attribute is required. | |
bool | passesOptionalCheck(string $attribute) Determine if the attribute passes any optional check. | |
bool | isNotNullIfMarkedAsNullable(string $rule, string $attribute) Determine if the attribute fails the nullable check. | |
bool | hasNotFailedPreviousRuleIfPresenceRule(string $rule, string $attribute) Determine if it's a necessary presence validation. | |
void | validateUsingCustomRule(string $attribute, mixed $value, Rule $rule) Validate an attribute using a custom rule object. | |
bool | shouldStopValidating(string $attribute) Check if we should stop further validations on a given attribute. | |
void | addFailure(string $attribute, string $rule, array $parameters = []) Add a failed rule and error message to the collection. | |
array | valid() Returns the data which was valid. | |
array | invalid() Returns the data which was invalid. | |
array | attributesThatHaveMessages() Generate an array of all attributes that have messages. | |
array | failed() Get the failed validation rules. | |
MessageBag | messages() Get the message container for the validator. | |
MessageBag | errors() An alternative more semantic shortcut to the message container. | |
MessageBag | getMessageBag() Get the messages for the instance. | |
bool | hasRule(string $attribute, string|array $rules) Determine if the given attribute has a rule in the given set. | |
array|null | getRule(string $attribute, string|array $rules) Get a rule and its parameters for a given attribute. | |
array | attributes() Get the data under validation. | |
array | getData() Get the data under validation. | |
$this | setData(array $data) Set the data under validation. | |
mixed | getValue(string $attribute) Get the value of a given attribute. | |
array | getRules() Get the validation rules. | |
$this | setRules(array $rules) Set the validation rules. | |
void | addRules(array $rules) Parse the given rules and merge them into current rules. | |
$this | sometimes(string|array $attribute, string|array $rules, callable $callback) Add conditions to a given field based on a Closure. | |
void | addExtensions(array $extensions) Register an array of custom validator extensions. | |
void | addImplicitExtensions(array $extensions) Register an array of custom implicit validator extensions. | |
void | addDependentExtensions(array $extensions) Register an array of custom implicit validator extensions. | |
void | addExtension(string $rule, Closure|string $extension) Register a custom validator extension. | |
void | addImplicitExtension(string $rule, Closure|string $extension) Register a custom implicit validator extension. | |
void | addDependentExtension(string $rule, Closure|string $extension) Register a custom dependent validator extension. | |
void | addReplacers(array $replacers) Register an array of custom validator message replacers. | |
void | addReplacer(string $rule, Closure|string $replacer) Register a custom validator message replacer. | |
$this | setCustomMessages(array $messages) Set the custom messages for the validator. | |
$this | setAttributeNames(array $attributes) Set the custom attributes on the validator. | |
$this | addCustomAttributes(array $customAttributes) Add custom attributes to the validator. | |
$this | setValueNames(array $values) Set the custom values on the validator. | |
$this | addCustomValues(array $customValues) Add the custom values for the validator. | |
void | setFallbackMessages(array $messages) Set the fallback messages for the validator. | |
PresenceVerifierInterface | getPresenceVerifier() Get the Presence Verifier implementation. | |
PresenceVerifierInterface | getPresenceVerifierFor(string $connection) Get the Presence Verifier implementation. | |
void | setPresenceVerifier(PresenceVerifierInterface $presenceVerifier) Set the Presence Verifier implementation. | |
Translator | getTranslator() Get the Translator implementation. | |
void | setTranslator(Translator $translator) Set the Translator implementation. | |
void | setContainer(Container $container) Set the IoC container instance. | |
bool|null | callExtension(string $rule, array $parameters) Call a custom validator extension. | |
bool | callClassBasedExtension(string $callback, array $parameters) Call a class based validator extension. | |
mixed | __call(string $method, array $parameters) Handle dynamic calls to class methods. |
Details
protected string replaceBetween(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the between rule.
protected string replaceDateFormat(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the date_format rule.
protected string replaceDifferent(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the different rule.
protected string replaceDigits(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the digits rule.
protected string replaceDigitsBetween(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the digits (between) rule.
protected string replaceMin(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the min rule.
protected string replaceMax(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the max rule.
protected string replaceIn(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the in rule.
protected string replaceNotIn(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the not_in rule.
protected string replaceInArray(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the in_array rule.
protected string replaceMimetypes(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the mimetypes rule.
protected string replaceMimes(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the mimes rule.
protected string replaceRequiredWith(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_with rule.
protected string replaceRequiredWithAll(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_with_all rule.
protected string replaceRequiredWithout(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_without rule.
protected string replaceRequiredWithoutAll(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_without_all rule.
protected string replaceSize(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the size rule.
protected string replaceGt(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the gt rule.
protected string replaceLt(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the lt rule.
protected string replaceGte(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the gte rule.
protected string replaceLte(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the lte rule.
protected string replaceRequiredIf(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_if rule.
protected string replaceRequiredUnless(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the required_unless rule.
protected string replaceSame(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the same rule.
protected string replaceBefore(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the before rule.
protected string replaceBeforeOrEqual(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the before_or_equal rule.
protected string replaceAfter(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the after rule.
protected string replaceAfterOrEqual(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the after_or_equal rule.
protected string replaceDimensions(string $message, string $attribute, string $rule, array $parameters)
Replace all place-holders for the dimensions rule.
protected string getMessage(string $attribute, string $rule)
Get the validation message for an attribute and rule.
protected string|null getInlineMessage(string $attribute, string $rule)
Get the proper inline error message for standard and size rules.
protected string|null getFromLocalArray(string $attribute, string $lowerRule, array|null $source = null)
Get the inline message for a rule if it exists.
protected string getCustomMessageFromTranslator(string $key)
Get the custom error message from translator.
protected string getWildcardCustomMessages(array $messages, string $search, string $default)
Check the given messages for a wildcard key.
protected string getSizeMessage(string $attribute, string $rule)
Get the proper error message for an attribute and size rule.
protected string getAttributeType(string $attribute)
Get the data type of the given attribute.
string makeReplacements(string $message, string $attribute, string $rule, array $parameters)
Replace all error message place-holders with actual values.
string getDisplayableAttribute(string $attribute)
Get the displayable name of the attribute.
protected string getAttributeFromTranslations(string $name)
Get the given attribute from the attribute translations.
protected string replaceAttributePlaceholder(string $message, string $value)
Replace the :attribute placeholder in the given message.
protected string replaceInputPlaceholder(string $message, string $attribute)
Replace the :input placeholder in the given message.
string getDisplayableValue(string $attribute, mixed $value)
Get the displayable name of the value.
protected array getAttributeList(array $values)
Transform an array of attributes to their displayable form.
protected string|null callReplacer(string $message, string $attribute, string $rule, array $parameters, Validator $validator)
Call a custom validator message replacer.
protected string callClassBasedReplacer(string $callback, string $message, string $attribute, string $rule, array $parameters, Validator $validator)
Call a class based validator message replacer.
bool validateAccepted(string $attribute, mixed $value)
Validate that an attribute was "accepted".
This validation rule implies the attribute is "required".
bool validateActiveUrl(string $attribute, mixed $value)
Validate that an attribute is an active URL.
bool validateBail()
"Break" on first validation fail.
Always returns true, just lets us put "bail" in rules.
bool validateBefore(string $attribute, mixed $value, array $parameters)
Validate the date is before a given date.
bool validateBeforeOrEqual(string $attribute, mixed $value, array $parameters)
Validate the date is before or equal a given date.
bool validateAfter(string $attribute, mixed $value, array $parameters)
Validate the date is after a given date.
bool validateAfterOrEqual(string $attribute, mixed $value, array $parameters)
Validate the date is equal or after a given date.
protected bool compareDates(string $attribute, mixed $value, array $parameters, string $operator)
Compare a given date against another using an operator.
protected string|null getDateFormat(string $attribute)
Get the date format for an attribute if it has one.
protected int getDateTimestamp(mixed $value)
Get the date timestamp.
protected bool checkDateTimeOrder(string $format, string $first, string $second, string $operator)
Given two date/time strings, check that one is after the other.
protected DateTime|null getDateTimeWithOptionalFormat(string $format, string $value)
Get a DateTime instance from a string.
protected DateTime|null getDateTime(string $value)
Get a DateTime instance from a string with no format.
protected bool isTestingRelativeDateTime(mixed $value)
Check if the given value should be adjusted to Carbon::getTestNow().
bool validateAlpha(string $attribute, mixed $value)
Validate that an attribute contains only alphabetic characters.
bool validateAlphaDash(string $attribute, mixed $value)
Validate that an attribute contains only alpha-numeric characters, dashes, and underscores.
bool validateAlphaNum(string $attribute, mixed $value)
Validate that an attribute contains only alpha-numeric characters.
bool validateArray(string $attribute, mixed $value)
Validate that an attribute is an array.
bool validateBetween(string $attribute, mixed $value, array $parameters)
Validate the size of an attribute is between a set of values.
bool validateBoolean(string $attribute, mixed $value)
Validate that an attribute is a boolean.
bool validateConfirmed(string $attribute, mixed $value)
Validate that an attribute has a matching confirmation.
bool validateDate(string $attribute, mixed $value)
Validate that an attribute is a valid date.
bool validateDateFormat(string $attribute, mixed $value, array $parameters)
Validate that an attribute matches a date format.
bool validateDateEquals(string $attribute, mixed $value, array $parameters)
Validate that an attribute is equal to another date.
bool validateDifferent(string $attribute, mixed $value, array $parameters)
Validate that an attribute is different from another attribute.
bool validateDigits(string $attribute, mixed $value, array $parameters)
Validate that an attribute has a given number of digits.
bool validateDigitsBetween(string $attribute, mixed $value, array $parameters)
Validate that an attribute is between a given number of digits.
bool validateDimensions(string $attribute, mixed $value, array $parameters)
Validate the dimensions of an image matches the given values.
protected bool failsBasicDimensionChecks(array $parameters, int $width, int $height)
Test if the given width and height fail any conditions.
protected bool failsRatioCheck(array $parameters, int $width, int $height)
Determine if the given parameters fail a dimension ratio check.
bool validateDistinct(string $attribute, mixed $value, array $parameters)
Validate an attribute is unique among other values.
bool validateEmail(string $attribute, mixed $value)
Validate that an attribute is a valid e-mail address.
bool validateExists(string $attribute, mixed $value, array $parameters)
Validate the existence of an attribute value in a database table.
protected int getExistCount(mixed $connection, string $table, string $column, mixed $value, array $parameters)
Get the number of records that exist in storage.
bool validateUnique(string $attribute, mixed $value, array $parameters)
Validate the uniqueness of an attribute value on a given database table.
If a database column is not specified, the attribute will be used.
protected array getUniqueIds(array $parameters)
Get the excluded ID column and value for the unique rule.
protected int prepareUniqueId(mixed $id)
Prepare the given ID for querying.
protected array getUniqueExtra(array $parameters)
Get the extra conditions for a unique rule.
protected array parseTable(string $table)
Parse the connection / table for the unique / exists rules.
protected bool getQueryColumn(array $parameters, string $attribute)
Get the column name for an exists / unique query.
string guessColumnForQuery(string $attribute)
Guess the database column from the given attribute name.
protected array getExtraConditions(array $segments)
Get the extra conditions for a unique / exists rule.
bool validateFile(string $attribute, mixed $value)
Validate the given value is a valid file.
bool validateFilled(string $attribute, mixed $value)
Validate the given attribute is filled if it is present.
bool validateGt(string $attribute, mixed $value, array $parameters)
Validate that an attribute is greater than another attribute.
bool validateLt(string $attribute, mixed $value, array $parameters)
Validate that an attribute is less than another attribute.
bool validateGte(string $attribute, mixed $value, array $parameters)
Validate that an attribute is greater than or equal another attribute.
bool validateLte(string $attribute, mixed $value, array $parameters)
Validate that an attribute is less than or equal another attribute.
bool validateImage(string $attribute, mixed $value)
Validate the MIME type of a file is an image MIME type.
bool validateIn(string $attribute, mixed $value, array $parameters)
Validate an attribute is contained within a list of values.
bool validateInArray(string $attribute, mixed $value, array $parameters)
Validate that the values of an attribute is in another attribute.
bool validateInteger(string $attribute, mixed $value)
Validate that an attribute is an integer.
bool validateIp(string $attribute, mixed $value)
Validate that an attribute is a valid IP.
bool validateIpv4(string $attribute, mixed $value)
Validate that an attribute is a valid IPv4.
bool validateIpv6(string $attribute, mixed $value)
Validate that an attribute is a valid IPv6.
bool validateJson(string $attribute, mixed $value)
Validate the attribute is a valid JSON string.
bool validateMax(string $attribute, mixed $value, array $parameters)
Validate the size of an attribute is less than a maximum value.
bool validateMimes(string $attribute, mixed $value, array $parameters)
Validate the guessed extension of a file upload is in a set of file extensions.
bool validateMimetypes(string $attribute, mixed $value, array $parameters)
Validate the MIME type of a file upload attribute is in a set of MIME types.
protected bool shouldBlockPhpUpload(mixed $value, array $parameters)
Check if PHP uploads are explicitly allowed.
bool validateMin(string $attribute, mixed $value, array $parameters)
Validate the size of an attribute is greater than a minimum value.
bool validateNullable()
"Indicate" validation should pass if value is null.
Always returns true, just lets us put "nullable" in rules.
bool validateNotIn(string $attribute, mixed $value, array $parameters)
Validate an attribute is not contained within a list of values.
bool validateNumeric(string $attribute, mixed $value)
Validate that an attribute is numeric.
bool validatePresent(string $attribute, mixed $value)
Validate that an attribute exists even if not filled.
bool validateRegex(string $attribute, mixed $value, array $parameters)
Validate that an attribute passes a regular expression check.
bool validateNotRegex(string $attribute, mixed $value, array $parameters)
Validate that an attribute does not pass a regular expression check.
bool validateRequired(string $attribute, mixed $value)
Validate that a required attribute exists.
bool validateRequiredIf(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when another attribute has a given value.
protected array convertValuesToBoolean(array $values)
Convert the given values to boolean if they are string "true" / "false".
bool validateRequiredUnless(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when another attribute does not have a given value.
bool validateRequiredWith(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when any other attribute exists.
bool validateRequiredWithAll(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when all other attributes exists.
bool validateRequiredWithout(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when another attribute does not.
bool validateRequiredWithoutAll(string $attribute, mixed $value, mixed $parameters)
Validate that an attribute exists when all other attributes do not.
protected bool anyFailingRequired(array $attributes)
Determine if any of the given attributes fail the required test.
protected bool allFailingRequired(array $attributes)
Determine if all of the given attributes fail the required test.
bool validateSame(string $attribute, mixed $value, array $parameters)
Validate that two attributes match.
bool validateSize(string $attribute, mixed $value, array $parameters)
Validate the size of an attribute.
bool validateSometimes()
"Validate" optional attributes.
Always returns true, just lets us put sometimes in rules.
bool validateString(string $attribute, mixed $value)
Validate that an attribute is a string.
bool validateTimezone(string $attribute, mixed $value)
Validate that an attribute is a valid timezone.
bool validateUrl(string $attribute, mixed $value)
Validate that an attribute is a valid URL.
protected mixed getSize(string $attribute, mixed $value)
Get the size of an attribute.
bool isValidFileInstance(mixed $value)
Check that the given value is a valid file instance.
protected bool compare(mixed $first, mixed $second, string $operator)
Determine if a comparison passes between the given values.
protected array parseNamedParameters(array $parameters)
Parse named parameters to $key => $value items.
protected void requireParameterCount(int $count, array $parameters, string $rule)
Require a certain number of parameters to be present.
protected void requireSameType(mixed $first, mixed $second)
Require comparison values to be of the same type.
protected void shouldBeNumeric(string $attribute, string $rule)
Adds the existing rule to the numericRules array if the attribute's value is numeric.
void __construct(Translator $translator, array $data, array $rules, array $messages = [], array $customAttributes = [])
Create a new Validator instance.
array parseData(array $data)
Parse the data array, converting dots to ->.
$this after(callable|string $callback)
Add an after validation callback.
bool passes()
Determine if the data passes the validation rules.
bool fails()
Determine if the data fails the validation rules.
array validate()
Run the validator's rules against its data.
protected void validateAttribute(string $attribute, string $rule)
Validate a given attribute against a rule.
protected bool dependsOnOtherFields(string $rule)
Determine if the given rule depends on other fields.
protected array getExplicitKeys(string $attribute)
Get the explicit keys from an attribute flattened with dot notation.
E.g. 'foo.1.bar.spark.baz' -> [1, 'spark'] for 'foo..bar..baz'
protected string getPrimaryAttribute(string $attribute)
Get the primary attribute name.
For example, if "name.0" is given, "name.*" will be returned.
protected array replaceAsterisksInParameters(array $parameters, array $keys)
Replace each field parameter which has asterisks with the given keys.
protected bool isValidatable(object|string $rule, string $attribute, mixed $value)
Determine if the attribute is validatable.
protected bool presentOrRuleIsImplicit(object|string $rule, string $attribute, mixed $value)
Determine if the field is present, or the rule implies required.
protected bool isImplicit(object|string $rule)
Determine if a given rule implies the attribute is required.
protected bool passesOptionalCheck(string $attribute)
Determine if the attribute passes any optional check.
protected bool isNotNullIfMarkedAsNullable(string $rule, string $attribute)
Determine if the attribute fails the nullable check.
protected bool hasNotFailedPreviousRuleIfPresenceRule(string $rule, string $attribute)
Determine if it's a necessary presence validation.
This is to avoid possible database type comparison errors.
protected void validateUsingCustomRule(string $attribute, mixed $value, Rule $rule)
Validate an attribute using a custom rule object.
protected bool shouldStopValidating(string $attribute)
Check if we should stop further validations on a given attribute.
void addFailure(string $attribute, string $rule, array $parameters = [])
Add a failed rule and error message to the collection.
array valid()
Returns the data which was valid.
array invalid()
Returns the data which was invalid.
protected array attributesThatHaveMessages()
Generate an array of all attributes that have messages.
array failed()
Get the failed validation rules.
MessageBag messages()
Get the message container for the validator.
MessageBag errors()
An alternative more semantic shortcut to the message container.
MessageBag getMessageBag()
Get the messages for the instance.
bool hasRule(string $attribute, string|array $rules)
Determine if the given attribute has a rule in the given set.
protected array|null getRule(string $attribute, string|array $rules)
Get a rule and its parameters for a given attribute.
array attributes()
Get the data under validation.
array getData()
Get the data under validation.
$this setData(array $data)
Set the data under validation.
protected mixed getValue(string $attribute)
Get the value of a given attribute.
array getRules()
Get the validation rules.
$this setRules(array $rules)
Set the validation rules.
void addRules(array $rules)
Parse the given rules and merge them into current rules.
$this sometimes(string|array $attribute, string|array $rules, callable $callback)
Add conditions to a given field based on a Closure.
void addExtensions(array $extensions)
Register an array of custom validator extensions.
void addImplicitExtensions(array $extensions)
Register an array of custom implicit validator extensions.
void addDependentExtensions(array $extensions)
Register an array of custom implicit validator extensions.
void addExtension(string $rule, Closure|string $extension)
Register a custom validator extension.
void addImplicitExtension(string $rule, Closure|string $extension)
Register a custom implicit validator extension.
void addDependentExtension(string $rule, Closure|string $extension)
Register a custom dependent validator extension.
void addReplacers(array $replacers)
Register an array of custom validator message replacers.
void addReplacer(string $rule, Closure|string $replacer)
Register a custom validator message replacer.
$this setCustomMessages(array $messages)
Set the custom messages for the validator.
$this setAttributeNames(array $attributes)
Set the custom attributes on the validator.
$this addCustomAttributes(array $customAttributes)
Add custom attributes to the validator.
$this setValueNames(array $values)
Set the custom values on the validator.
$this addCustomValues(array $customValues)
Add the custom values for the validator.
void setFallbackMessages(array $messages)
Set the fallback messages for the validator.
PresenceVerifierInterface getPresenceVerifier()
Get the Presence Verifier implementation.
protected PresenceVerifierInterface getPresenceVerifierFor(string $connection)
Get the Presence Verifier implementation.
void setPresenceVerifier(PresenceVerifierInterface $presenceVerifier)
Set the Presence Verifier implementation.
Translator getTranslator()
Get the Translator implementation.
void setTranslator(Translator $translator)
Set the Translator implementation.
void setContainer(Container $container)
Set the IoC container instance.
protected bool|null callExtension(string $rule, array $parameters)
Call a custom validator extension.
protected bool callClassBasedExtension(string $callback, array $parameters)
Call a class based validator extension.
mixed __call(string $method, array $parameters)
Handle dynamic calls to class methods.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.7/Illuminate/Validation/Validator.html