DateCompareValidator ​
- Type
- Class
- Namespace
- craft\validators
- Inherits
- craft\validators\DateCompareValidator » yii\validators\Validator » yii\base\Component » yii\base\BaseObject
- Implements
- yii\base\Configurable
- Since
- 3.7.21
Class DateCompareValidator.
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) |
compareAttribute | string, null – The name of the attribute to be compared with. |
compareValue | DateTime, callable, null – The constant value to be compared with. |
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(). |
message | string, null – The user-defined error message. |
on | array, string – Scenarios that the validator can be applied to. |
operator | string – The operator for comparison. |
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. |
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. |
compareAttribute
​
The name of the attribute to be compared with. When both this property and compareValue are set, the latter takes precedence.
See also compareValue
compareValue
​
The constant value to be compared with. When both this property and compareAttribute are set, this property takes precedence.
See also compareAttribute
message
​
The user-defined error message. It may contain the following placeholders which will be replaced accordingly by the validator:
{attribute}
: the label of the attribute being validated{value}
: the value of the attribute being validated{compareValue}
: the value or the attribute label to be compared with{compareAttribute}
: the label of the attribute to be compared with{compareValueOrAttribute}
: the value or the attribute label to be compared with
operator
​
- Type
- string
- Default value
'=='
The operator for comparison. The following operators are supported:
==
: check if two values are equal. The comparison is done is non-strict mode.!=
: check if two values are NOT equal. The comparison is done is non-strict mode.>
: check if value being validated is greater than the value being compared with.>=
: check if value being validated is greater than or equal to the value being compared with.<
: check if value being validated is less than the value being compared with.<=
: check if value being validated is less than or equal to the value being compared with.
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.
validateAttribute()
​
Validates a single attribute.
Child classes must implement this method to provide the actual validation logic.
Arguments ​
$model
(yii\base\Model) – The data model to be validated$attribute
(string) – The name of the attribute to be validated.
Protected Methods ​
Method | Description |
---|---|
compareValues() | Compares two values with the specified operator. |
formatMessage() | Formats a mesage using the I18N, or simple strtr if \Yii::$app is not available. |
validateValue() | Validates a value. |
compareValues()
​
Compares two values with the specified operator.
Arguments ​
$operator
(string) – The comparison operator$value
(DateTime) – The value being compared$compareValue
(DateTime) – Another value being compared
Returns ​
boolean – Whether the comparison using the specified operator is true.
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...',
]];
}
return null;
for this example message
template can contain {param1}
, {formattedLimit}
, {mimeTypes}
, {param4}
Null should be returned if the data is valid.
Throws ​
- yii\base\NotSupportedException
if the validator does not supporting data validation without a model