Language

Validates that a value is a valid language Unicode language identifier (e.g. fr or zh-Hant).

Applies to property or method
Options
Class Language
Validator LanguageValidator

Basic Usage

  • YAML
    # src/Acme/UserBundle/Resources/config/validation.yml
    Acme\UserBundle\Entity\User:
        properties:
            preferredLanguage:
                - Language: ~
    
  • Annotations
    // src/Acme/UserBundle/Entity/User.php
    namespace Acme\UserBundle\Entity;
    
    use Symfony\Component\Validator\Constraints as Assert;
    
    class User
    {
        /**
         * @Assert\Language()
         */
         protected $preferredLanguage;
    }
    
  • XML
    <!-- src/Acme/UserBundle/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\UserBundle\Entity\User">
            <property name="preferredLanguage">
                <constraint name="Language" />
            </property>
        </class>
    </constraint-mapping>
    
  • PHP
    // src/Acme/UserBundle/Entity/User.php
    namespace Acme\UserBundle\Entity;
    
    use Symfony\Component\Validator\Mapping\ClassMetadata;
    use Symfony\Component\Validator\Constraints as Assert;
    
    class User
    {
        public static function loadValidatorMetadata(ClassMetadata $metadata)
        {
            $metadata->addPropertyConstraint('preferredLanguage', new Assert\Language());
        }
    }
    

Options

message

type: string default: This value is not a valid language.

This message is shown if the string is not a valid language code.