public function ExecutionContext::validate in Plug 7
Same name in this branch
- 7 lib/Symfony/validator/Symfony/Component/Validator/ExecutionContext.php \Symfony\Component\Validator\ExecutionContext::validate()
- 7 lib/Symfony/validator/Symfony/Component/Validator/Context/ExecutionContext.php \Symfony\Component\Validator\Context\ExecutionContext::validate()
Validates the given value within the scope of the current validation.
The value may be any value recognized by the used metadata factory (see {@link MetadataFactoryInterface::getMetadata}), or an array or a traversable object of such values.
Usually you validate a value that is not the current node of the execution context. For this case, you can pass the {@link $subPath} argument which is appended to the current property path when a violation is created. For example, take the following object graph:
<pre> (Person)---($address: Address)---($phoneNumber: PhoneNumber) ^ </pre>
When the execution context stops at the <tt>Person</tt> instance, the property path is "address". When you validate the <tt>PhoneNumber</tt> instance now, pass "phoneNumber" as sub path to correct the property path to "address.phoneNumber":
<pre> $context->validate($address->phoneNumber, 'phoneNumber'); </pre>
Any violations generated during the validation will be added to the violation list that you can access with {@link getViolations}.
Parameters
mixed $value The value to validate.:
string $subPath The path to append to the context's property path.:
null|string|string[] $groups The groups to validate in. If you don't pass any: groups here, the current group of the context will be used.
bool $traverse Whether to traverse the value if it is an array: or an instance of <tt>\Traversable</tt>.
bool $deep Whether to traverse the value recursively if: it is a collection of collections.
Overrides ExecutionContextInterface::validate
Deprecated
Deprecated since version 2.5, to be removed in Symfony 3.0. Use {@link Context\ExecutionContextInterface::getValidator()} instead.
1 method overrides ExecutionContext::validate()
- LegacyExecutionContext::validate in lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Context/ LegacyExecutionContext.php - Validates the given value within the scope of the current validation.
File
- lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Context/ ExecutionContext.php, line 322
Class
- ExecutionContext
- The context used and created by {@link ExecutionContextFactory}.
Namespace
Symfony\Component\Validator\ContextCode
public function validate($value, $subPath = '', $groups = null, $traverse = false, $deep = false) {
throw new BadMethodCallException('validate() is not supported anymore as of Symfony 2.5. ' . 'Please use getValidator() instead or enable the legacy mode.');
}