DateCompareValidator

Type
Class
Namespace
craft\validators
Inherits
craft\validators\DateCompareValidator » yii\validators\Validator (opens new window) » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
yii\base\Configurable (opens new window)
Since
3.7.21

Class DateCompareValidator.

View source (opens new window)

# Public Properties

Property Description
attributeNames (opens new window) array (opens new window) – Attribute names.
attributes (opens new window) array (opens new window), string (opens new window) – Attributes to be validated by this validator.
behaviors (opens new window) yii\base\Behavior (opens new window) – List of behaviors attached to this component.
builtInValidators (opens new window) array (opens new window) – List of built-in validators (name => class or configuration)
compareAttribute string (opens new window), null (opens new window) – The name of the attribute to be compared with.
compareValue DateTime (opens new window), callable (opens new window), null (opens new window) – The constant value to be compared with.
enableClientValidation (opens new window) boolean (opens new window) – Whether to enable client-side validation for this validator.
except (opens new window) array (opens new window), string (opens new window) – Scenarios that the validator should not be applied to.
isEmpty (opens new window) callable (opens new window), null (opens new window) – A PHP callable that replaces the default implementation of isEmpty() (opens new window).
message string (opens new window), null (opens new window) – The user-defined error message.
on (opens new window) array (opens new window), string (opens new window) – Scenarios that the validator can be applied to.
operator string (opens new window) – The operator for comparison.
skipOnEmpty (opens new window) boolean (opens new window) – Whether this validation rule should be skipped if the attribute value is null or an empty string.
skipOnError (opens new window) boolean (opens new window) – Whether this validation rule should be skipped if the attribute being validated already has some validation error according to some previous rules.
validationAttributes (opens new window) array (opens new window), null (opens new window) – List of attribute names.
when (opens new window) callable (opens new window), null (opens new window) – A PHP callable whose return value determines whether this validator should be applied.
whenClient (opens new window) string (opens new window), null (opens new window) – A JavaScript function name whose return value determines whether this validator should be applied on the client-side.

# compareAttribute

Type
string (opens new window), null (opens new window)
Default value
null

The name of the attribute to be compared with. When both this property and compareValue are set, the latter takes precedence.

See also compareValue

View source (opens new window)

# compareValue

Type
DateTime (opens new window), callable (opens new window), null (opens new window)
Default value
null

The constant value to be compared with. When both this property and compareAttribute are set, this property takes precedence.

See also compareAttribute

View source (opens new window)

# message

Type
string (opens new window), null (opens new window)
Default value
null

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

View source (opens new window)

# operator

Type
string (opens new window)
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.

View source (opens new window)

# Public Methods

Method Description
__call() (opens new window) Calls the named method which is not a class method.
__clone() (opens new window) This method is called after the object is created by cloning an existing one.
__construct() (opens new window) Constructor.
__get() (opens new window) Returns the value of a component property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__set() (opens new window) Sets the value of a component property.
__unset() (opens new window) Sets a component property to be null.
addError() (opens new window) Adds an error about the specified attribute to the model object.
attachBehavior() (opens new window) Attaches a behavior to this component.
attachBehaviors() (opens new window) Attaches a list of behaviors to the component.
behaviors() (opens new window) Returns a list of behaviors that this component should behave as.
canGetProperty() (opens new window) Returns a value indicating whether a property can be read.
canSetProperty() (opens new window) Returns a value indicating whether a property can be set.
className() (opens new window) Returns the fully qualified name of this class.
clientValidateAttribute() (opens new window) Returns the JavaScript needed for performing client-side validation.
createValidator() (opens new window) Creates a validator object.
detachBehavior() (opens new window) Detaches a behavior from the component.
detachBehaviors() (opens new window) Detaches all behaviors from the component.
ensureBehaviors() (opens new window) Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component.
getAttributeNames() (opens new window) Returns cleaned attribute names without the ! character at the beginning.
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) Returns all behaviors attached to this component.
getClientOptions() (opens new window) Returns the client-side validation options.
getValidationAttributes() (opens new window) Returns a list of attributes this validator applies to.
hasEventHandlers() (opens new window) Returns a value indicating whether there is any handler attached to the named event.
hasMethod() (opens new window) Returns a value indicating whether a method is defined.
hasProperty() (opens new window) Returns a value indicating whether a property is defined for this component.
init() Initializes the object.
isActive() (opens new window) Returns a value indicating whether the validator is active for the given scenario and attribute.
isEmpty() (opens new window) Checks if the given value is empty.
off() (opens new window) Detaches an existing event handler from this component.
on() (opens new window) Attaches an event handler to an event.
trigger() (opens new window) Triggers an event.
validate() (opens new window) Validates a given value.
validateAttribute() Validates a single attribute.
validateAttributes() (opens new window) 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.

View source (opens new window)

# validateAttribute()

Validates a single attribute.

Child classes must implement this method to provide the actual validation logic.

View source (opens new window)

Arguments

# Protected Methods

Method Description
compareValues() Compares two values with the specified operator.
formatMessage() (opens new window) 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.

View source (opens new window)

Arguments

Returns

boolean (opens new window) – 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.

View source (opens new window)

Arguments

  • $value (mixed) – The data value to be validated.

Returns

array (opens new window), null (opens new window) – 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