So far, this is just an ordinary class that serves some purpose inside your application.
The goal of validation is to tell you if the data of an object is valid.
Symfony allows you to add a constraint to any public method whose name starts with "get", "is" or "has".
constraint is a generic constraint that's applied to the class itself.
When that class is validated, methods specified by that constraint are simply executed so that each can provide more custom validation.
If you're ever unsure of how to specify an option, either check the API documentation for the constraint or play it safe by always passing in an array of options (the first method shown above). Property constraints are the most common and easy to use.
Getter constraints allow you to specify more complex validation rules.
Finally, class constraints are intended for scenarios where you want to validate a class as a whole.
Constraints can also be applied to the return value of a method.
is a powerful tool that can be leveraged to guarantee that the data of any object is "valid".
The power behind validation lies in "constraints", which are rules that you can apply to properties or getter methods of your object.
For this to work, you'll configure a list of rules (called service.
Behind the scenes, a constraint is simply a PHP object that makes an assertive statement.
You can do this by creating an Note The keen-eyed among you will have noticed that the prefix of the getter ("get", "is" or "has") is omitted in the mappings for the YAML, XML and PHP formats.