Class ValidationRule

ValidationRule object. Represents a validation method, error message and rules for applying such method to a field.

Properties summary

  • $_last protected
    boolean
    The 'last' key
  • $_message protected
    string
    The 'message' key
  • $_on protected
    string
    The 'on' key
  • $_pass protected
    array
    Extra arguments to be passed to the validation method
  • $_provider protected
    string

    Key under which the object or class where the method to be used for validation will be found

  • $_rule protected
    string|callable
    The method to be called for a given scope

Method Summary

  • __construct() public
    Constructor
  • Sets the rule properties from the rule entry in validate
  • _skip() protected
    Checks if the validation rule should be skipped
  • get() public
    Returns the value of a property by name
  • isLast() public

    Returns whether this rule should break validation process for associated field after it fails

  • process() public

    Dispatches the validation rule to the given validator method and returns a boolean indicating whether the rule passed or not. If a string is returned it is assumed that the rule failed and the error message was given as a result.

Method Detail

__construct()source public

__construct( array $validator [] )

Constructor

Parameters

array $validator optional []
[optional] The validator properties

_addValidatorProps()source protected

_addValidatorProps( array $validator [] )

Sets the rule properties from the rule entry in validate

Parameters

array $validator optional []
[optional]

_skip()source protected

_skip( array $context )

Checks if the validation rule should be skipped

Parameters

array $context

A key value list of data that could be used as context during validation. Recognized keys are: - newRecord: (boolean) whether or not the data to be validated belongs to a new record - data: The full data that was passed to the validation process - providers associative array with objects or class names that will be passed as the last argument for the validation method

Returns

boolean
True if the ValidationRule should be skipped

get()source public

get( string $property )

Returns the value of a property by name

Parameters

string $property
The name of the property to retrieve.

Returns

mixed

isLast()source public

isLast( )

Returns whether this rule should break validation process for associated field after it fails

Returns

boolean

process()source public

process( mixed $value , array $providers , array $context [] )

Dispatches the validation rule to the given validator method and returns a boolean indicating whether the rule passed or not. If a string is returned it is assumed that the rule failed and the error message was given as a result.

Parameters

mixed $value
The data to validate
array $providers

associative array with objects or class names that will be passed as the last argument for the validation method

array $context optional []

A key value list of data that could be used as context during validation. Recognized keys are: - newRecord: (boolean) whether or not the data to be validated belongs to a new record - data: The full data that was passed to the validation process - field: The name of the field that is being processed

Returns

boolean|string

Throws

InvalidArgumentException

when the supplied rule is not a valid callable for the configured scope


Properties detail

$_lastsource

protected boolean

The 'last' key

false

$_messagesource

protected string

The 'message' key

$_onsource

protected string

The 'on' key

$_passsource

protected array

Extra arguments to be passed to the validation method

[]

$_providersource

protected string

Key under which the object or class where the method to be used for validation will be found

'default'

$_rulesource

protected string|callable

The method to be called for a given scope

© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.Validation.ValidationRule.html