WARNING:
You are browsing the documentation for Symfony 2.2 which is not maintained anymore.
Consider upgrading your projects to Symfony 5.2.
Url
Url¶
Validates that a value is a valid URL string.
Applies to | property or method |
Options | |
Class | Symfony\Component\Validator\Constraints\Url |
Validator | Symfony\Component\Validator\Constraints\UrlValidator |
Basic Usage¶
- YAML
1 2 3 4 5
# src/BlogBundle/Resources/config/validation.yml Acme\BlogBundle\Entity\Author: properties: bioUrl: - Url: ~
- Annotations
1 2 3 4 5 6 7 8 9 10 11 12
// src/Acme/BlogBundle/Entity/Author.php namespace Acme\BlogBundle\Entity; use Symfony\Component\Validator\Constraints as Assert; class Author { /** * @Assert\Url() */ protected $bioUrl; }
- XML
1 2 3 4 5 6 7 8 9 10 11 12
<!-- src/Acme/BlogBundle/Resources/config/validation.xml --> <?xml version="1.0" encoding="UTF-8" ?> <constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd"> <class name="Acme\BlogBundle\Entity\Author"> <property name="bioUrl"> <constraint name="Url" /> </property> </class> </constraint-mapping>
- PHP
1 2 3 4 5 6 7 8 9 10 11 12 13
// src/Acme/BlogBundle/Entity/Author.php namespace Acme\BlogBundle\Entity; use Symfony\Component\Validator\Mapping\ClassMetadata; use Symfony\Component\Validator\Constraints as Assert; class Author { public static function loadValidatorMetadata(ClassMetadata $metadata) { $metadata->addPropertyConstraint('bioUrl', new Assert\Url()); } }
Options¶
message¶
type: string
default: This value is not a valid URL.
This message is shown if the URL is invalid.
protocols¶
type: array
default: array('http', 'https')
The protocols that will be considered to be valid. For example, if you also
needed ftp://
type URLs to be valid, you’d redefine the protocols
array, listing http
, https
, and also ftp
.
This work, including the code samples, is licensed under a Creative Commons BY-SA 3.0 license.