Class ValidationSet
ValidationSet object. Holds all validation rules for a field and exposes methods to dynamically add or remove validation rules
Property Summary
-
$_allowEmpty protected
callable|string|bool
Denotes if a field is allowed to be empty
-
$_rules protected
array<Cake\Validation\ValidationRule>
Holds the ValidationRule objects
-
$_validatePresent protected
callable|string|bool
Denotes whether the fieldname key must be present in data array
Method Summary
-
add() public
Sets a ValidationRule $rule with a $name
-
allowEmpty() public
Sets whether a field value is allowed to be empty.
-
count() public
Returns the number of rules in this set
-
getIterator() public
Returns an iterator for each of the rules to be applied
-
isEmptyAllowed() public
Returns whether a field can be left empty.
-
isPresenceRequired() public
Returns whether a field can be left out.
-
offsetExists() public
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
-
remove() public
Removes a validation rule from the set
-
requirePresence() public
Sets whether a field is required to be present in data array.
-
rule() public
Gets a rule for a given name if exists
-
rules() public
Returns all rules for this validation set
Method Detail
add() ¶ public
add(string $name, Cake\Validation\ValidationRule|array $rule): $this
Sets a ValidationRule $rule with a $name
Example:
$set
->add('notBlank', ['rule' => 'notBlank'])
->add('inRange', ['rule' => ['between', 4, 10])
Parameters
-
string
$name The name under which the rule should be set
-
Cake\Validation\ValidationRule|array
$rule The validation rule to be set
Returns
$this
allowEmpty() ¶ public
allowEmpty(callable|string|bool $allowEmpty): $this
Sets whether a field value is allowed to be empty.
Parameters
-
callable|string|bool
$allowEmpty Valid values are true, false, 'create', 'update' or a callable.
Returns
$this
getIterator() ¶ public
getIterator(): Traversable<string, \Cake\Validation\ValidationRule>
Returns an iterator for each of the rules to be applied
Returns
Traversable<string, \Cake\Validation\ValidationRule>
isEmptyAllowed() ¶ public
isEmptyAllowed(): callable|string|bool
Returns whether a field can be left empty.
Returns
callable|string|bool
isPresenceRequired() ¶ public
isPresenceRequired(): callable|string|bool
Returns whether a field can be left out.
Returns
callable|string|bool
offsetExists() ¶ public
offsetExists(string $index): bool
Returns whether an index exists in the rule set
Parameters
-
string
$index name of the rule
Returns
bool
offsetGet() ¶ public
offsetGet(string $index): Cake\Validation\ValidationRule
Returns a rule object by its index
Parameters
-
string
$index name of the rule
Returns
Cake\Validation\ValidationRule
offsetSet() ¶ public
offsetSet(string $index, Cake\Validation\ValidationRule|array $rule): void
Sets or replace a validation rule
Parameters
-
string
$index name of the rule
-
Cake\Validation\ValidationRule|array
$rule Rule to add to $index
Returns
void
offsetUnset() ¶ public
offsetUnset(string $index): void
Unsets a validation rule
Parameters
-
string
$index name of the rule
Returns
void
remove() ¶ public
remove(string $name): $this
Removes a validation rule from the set
Example:
$set
->remove('notBlank')
->remove('inRange')
Parameters
-
string
$name The name under which the rule should be unset
Returns
$this
requirePresence() ¶ public
requirePresence(callable|string|bool $validatePresent): $this
Sets whether a field is required to be present in data array.
Parameters
-
callable|string|bool
$validatePresent Valid values are true, false, 'create', 'update' or a callable.
Returns
$this
rule() ¶ public
rule(string $name): Cake\Validation\ValidationRule|null
Gets a rule for a given name if exists
Parameters
-
string
$name The name under which the rule is set.
Returns
Cake\Validation\ValidationRule|null
rules() ¶ public
rules(): array<Cake\Validation\ValidationRule>
Returns all rules for this validation set
Returns
array<Cake\Validation\ValidationRule>
Property Detail
$_validatePresent ¶ protected
Denotes whether the fieldname key must be present in data array
Type
callable|string|bool