Class CakeValidationSet

CakeValidationSet object. Holds all validation rules for a field and exposes methods to dynamically add or remove validation rules

CakeValidationSet implements ArrayAccess, IteratorAggregate, Countable
Package: Cake\Model\Validator
Link: https://book.cakephp.org/2.0/en/data-validation.html
Copyright: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
License: MIT License
Location: Cake/Model/Validator/CakeValidationSet.php

Properties summary

Method Summary

  • __construct() public
    Constructor
  • Fetches the correct error message for a failed validation
  • _translateArgs() protected
    Applies translations to validator arguments.
  • count() public
    Returns the number of rules in this set
  • getIterator() public
    Returns an iterator for each of the rules to be applied
  • getRule() public
    Gets a rule for a given name if exists
  • getRules() public
    Returns all rules for this validation set
  • Returns whether an index exists in the rule set
  • offsetGet() public
    Returns a rule object by its index
  • offsetSet() public
    Sets or replace a validation rule.
  • offsetUnset() public
    Unsets a validation rule
  • removeRule() public
    Removes a validation rule from the set
  • reset() public
    Resets internal state for all validation rules in this set
  • setMethods() public
    Sets the list of methods to use for validation
  • setRule() public
    Sets a CakeValidationRule $rule with a $name
  • setRules() public
    Sets the rules for a given field
  • Sets the I18n domain for validation messages.
  • validate() public

    Runs all validation rules in this set and returns a list of validation errors

Method Detail

__construct()source public

__construct( string $fieldName , array $ruleSet )

Constructor

Parameters

string $fieldName
The fieldname.
array $ruleSet
Rules set.

_processValidationResponse()source protected

_processValidationResponse( string $name , CakeValidationRule $rule )

Fetches the correct error message for a failed validation

Parameters

string $name
the name of the rule as it was configured
CakeValidationRule $rule
the object containing validation information

Returns

string

_translateArgs()source protected

_translateArgs( array $args )

Applies translations to validator arguments.

Parameters

array $args
The args to translate

Returns

array
Translated args.

count()source public

count( )

Returns the number of rules in this set

Returns

integer

Implementation of

Countable::count()

getIterator()source public

getIterator( )

Returns an iterator for each of the rules to be applied

Returns

ArrayIterator

Implementation of

IteratorAggregate::getIterator()

getRule()source public

getRule( string $name )

Gets a rule for a given name if exists

Parameters

string $name
Field name.

Returns

CakeValidationRule

getRules()source public

getRules( )

Returns all rules for this validation set

Returns

CakeValidationRule[]

offsetExists()source public

offsetExists( string $index )

Returns whether an index exists in the rule set

Parameters

string $index
name of the rule

Returns

boolean

Implementation of

ArrayAccess::offsetExists()

offsetGet()source public

offsetGet( string $index )

Returns a rule object by its index

Parameters

string $index
name of the rule

Returns

CakeValidationRule

Implementation of

ArrayAccess::offsetGet()

offsetSet()source public

offsetSet( string $index , CakeValidationRule|array $rule )

Sets or replace a validation rule.

This is a wrapper for ArrayAccess. Use setRule() directly for chainable access.

Parameters

string $index
Name of the rule.
CakeValidationRule|array $rule
Rule to add to $index.

See

http://www.php.net/manual/en/arrayobject.offsetset.php

Implementation of

ArrayAccess::offsetSet()

offsetUnset()source public

offsetUnset( string $index )

Unsets a validation rule

Parameters

string $index
name of the rule

Implementation of

ArrayAccess::offsetUnset()

removeRule()source public

removeRule( string $name )

Removes a validation rule from the set

Example:

$set
        ->removeRule('required')
        ->removeRule('inRange')

Parameters

string $name
The name under which the rule should be unset

Returns

CakeValidationSet

reset()source public

reset( )

Resets internal state for all validation rules in this set

setMethods()source public

setMethods( array $methods )

Sets the list of methods to use for validation

Parameters

array $methods
$methods Methods list

setRule()source public

setRule( string $name , CakeValidationRule|array $rule )

Sets a CakeValidationRule $rule with a $name

Example:

$set
        ->setRule('required', array('rule' => 'notBlank', 'required' => true))
        ->setRule('between', array('rule' => array('lengthBetween', 4, 10))

Parameters

string $name
The name under which the rule should be set
CakeValidationRule|array $rule
The validation rule to be set

Returns

CakeValidationSet

setRules()source public

setRules( array $rules array() , boolean $mergeVars true )

Sets the rules for a given field

Example:

$set->setRules(array(
        'required' => array('rule' => 'notBlank', 'required' => true),
        'inRange' => array('rule' => array('between', 4, 10)
        ));

Parameters

array $rules optional array()
The rules to be set
boolean $mergeVars optional true
[optional] If true, merges vars instead of replace. Defaults to true.

Returns

CakeValidationSet

setValidationDomain()source public

setValidationDomain( string $validationDomain )

Sets the I18n domain for validation messages.

Parameters

string $validationDomain
The validation domain to be used.

validate()source public

validate( array $data , boolean $isUpdate false )

Runs all validation rules in this set and returns a list of validation errors

Parameters

array $data
Data array
boolean $isUpdate optional false
Is record being updated or created

Returns

array
list of validation errors for this field

Properties detail

$_methodssource

protected array

List of methods available for validation

array()

$_rulessource

protected CakeValidationRule[]

Holds the CakeValidationRule objects

array()

$_validationDomainsource

protected string

I18n domain for validation messages.

null

$fieldsource

public string

Holds the fieldname

null

$isStoppedsource

public boolean

Whether the validation is stopped

false

$ruleSetsource

public array

Holds the original ruleSet

array()

© 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/2.10/class-CakeValidationSet.html