ArrayValidator ​
- Type
- Class
- Namespace
- craft\validators
- Inherits
- craft\validators\ArrayValidator » yii\validators\Validator » yii\base\Component » yii\base\BaseObject
- Implements
- yii\base\Configurable
- Since
- 3.0.0
Class ArrayValidator.
Public Properties ​
Property | Description |
---|---|
attributeNames | array – Attribute names. |
attributes | array, string – Attributes to be validated by this validator. |
behaviors | yii\base\Behavior – List of behaviors attached to this component. |
builtInValidators | array – List of built-in validators (name => class or configuration) |
count | integer, array, null – Specifies the count limit of the value to be validated. |
enableClientValidation | boolean – Whether to enable client-side validation for this validator. |
except | array, string – Scenarios that the validator should not be applied to. |
isEmpty | callable, null – A PHP callable that replaces the default implementation of isEmpty(). |
max | integer, null – Maximum count. |
message | string, null – The user-defined error message. |
min | integer, null – Minimum count. |
notEqual | string, null – User-defined error message used when the count of the value is not equal to count. |
on | array, string – Scenarios that the validator can be applied to. |
skipOnEmpty | boolean – Whether this validation rule should be skipped if the attribute value is null or an empty string. |
skipOnError | boolean – Whether this validation rule should be skipped if the attribute being validated already has some validation error according to some previous rules. |
tooFew | string, null – User-defined error message used when the count of the value is smaller than min. |
tooMany | string, null – User-defined error message used when the count of the value is greater than max. |
validationAttributes | array, null – List of attribute names. |
when | callable, null – A PHP callable whose return value determines whether this validator should be applied. |
whenClient | string, null – A JavaScript function name whose return value determines whether this validator should be applied on the client-side. |
count
​
Specifies the count limit of the value to be validated.
See also:
- tooFew – for the customized message for a too short array
- tooMany – for the customized message for a too long array
- notEqual – for the customized message for an array that does not match desired count
max
​
Maximum count. If not set, it means no maximum count limit.
See also tooMany – for the customized message for a too long array
min
​
Minimum count. If not set, it means no minimum count limit.
See also tooFew – for the customized message for a too short array
notEqual
​
User-defined error message used when the count of the value is not equal to count.
tooFew
​
User-defined error message used when the count of the value is smaller than min.
tooMany
​
User-defined error message used when the count of the value is greater than max.
Public Methods ​
Method | Description |
---|---|
__call() | Calls the named method which is not a class method. |
__clone() | This method is called after the object is created by cloning an existing one. |
__construct() | Constructor. |
__get() | Returns the value of a component property. |
__isset() | Checks if a property is set, i.e. defined and not null. |
__set() | Sets the value of a component property. |
__unset() | Sets a component property to be null. |
addError() | Adds an error about the specified attribute to the model object. |
attachBehavior() | Attaches a behavior to this component. |
attachBehaviors() | Attaches a list of behaviors to the component. |
behaviors() | Returns a list of behaviors that this component should behave as. |
canGetProperty() | Returns a value indicating whether a property can be read. |
canSetProperty() | Returns a value indicating whether a property can be set. |
className() | Returns the fully qualified name of this class. |
clientValidateAttribute() | Returns the JavaScript needed for performing client-side validation. |
createValidator() | Creates a validator object. |
detachBehavior() | Detaches a behavior from the component. |
detachBehaviors() | Detaches all behaviors from the component. |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
getAttributeNames() | Returns cleaned attribute names without the ! character at the beginning. |
getBehavior() | Returns the named behavior object. |
getBehaviors() | Returns all behaviors attached to this component. |
getClientOptions() | Returns the client-side validation options. |
getValidationAttributes() | Returns a list of attributes this validator applies to. |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. |
hasMethod() | Returns a value indicating whether a method is defined. |
hasProperty() | Returns a value indicating whether a property is defined for this component. |
init() | Initializes the object. |
isActive() | Returns a value indicating whether the validator is active for the given scenario and attribute. |
isEmpty() | Checks if the given value is empty. |
off() | Detaches an existing event handler from this component. |
on() | Attaches an event handler to an event. |
trigger() | Triggers an event. |
validate() | Validates a given value. |
validateAttribute() | Validates a single attribute. |
validateAttributes() | Validates the specified object. |
init()
​
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
Protected Methods ​
Method | Description |
---|---|
formatMessage() | Formats a mesage using the I18N, or simple strtr if \Yii::$app is not available. |
validateValue() | Validates a value. |
validateValue()
​
Validates a value.
A validator class can implement this method to support data validation out of the context of a data model.
Arguments ​
$value
(mixed
) – The data value to be validated.
Returns ​
array, null – The error message and the array of parameters to be inserted into the error message.
if (!$valid) {
return [$this->message, [
'param1' => $this->param1,
'formattedLimit' => Yii::$app->formatter->asShortSize($this->getSizeLimit()),
'mimeTypes' => implode(', ', $this->mimeTypes),
'param4' => 'etc...',
]];
}
#### Throws
- [yii\base\NotSupportedException](https://www.yiiframework.com/doc/api/2.0/yii-base-notsupportedexception)\
if the validator does not supporting data validation without a model