Valida que la longitud de una cadena dada está entre algún valor mínimo y máximo.
Nuevo en la versión 2.1: La restricción Length se añadió en Symfony 2.1.
| Aplica a | propiedad o método | 
| Opciones | |
| Clase | Symfony\Component\Validator\Constraints\Length | 
| Validador | Symfony\Component\Validator\Constraints\LengthValidator | 
Para verificar que la longitud del campo firstName de una clase está entre 2 y 50, puedes agregar lo siguiente:
# src/Acme/EventBundle/Resources/config/validation.yml
Acme\EventBundle\Entity\Participant:
    properties:
        firstName:
            - Length:
                min: 2
                max: 50
                minMessage: "Tu primer nombre por lo menos debe tener {{ limit }} caracteres de largo"
                maxMessage: "Tu primer nombre no puede tener más de {{ limit }} caracteres de largo"
// src/Acme/EventBundle/Entity/Participant.php
namespace Acme\EventBundle\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class Participant
{
    /**
     * @Assert\Length(
     *      min = "2",
     *      max = "50",
     *      minMessage = "Tu primer nombre por lo menos debe tener {{ limit }} caracteres de largo",
     *      maxMessage = "Tu primer nombre no puede tener más de {{ limit }} caracteres de largo"
     * )
     */
     protected $firstName;
}
<!-- src/Acme/EventBundle/Resources/config/validation.xml -->
<class name="Acme\EventBundle\Entity\Participant">
    <property name="firstName">
        <constraint name="Length">
            <option name="min">2</option>
            <option name="max">50</option>
            <option name="minMessage">Tu primer nombre por lo menos debe tener {{ limit }} caracteres de largo</option>
            <option name="maxMessage">Tu primer nombre no puede tener más de {{ limit }} caracteres de largo</option>
        </constraint>
    </property>
</class>
// src/Acme/EventBundle/Entity/Participant.php
namespace Acme\EventBundle\Entity;
use Symfony\Component\Validator\Mapping\ClassMetadata;
use Symfony\Component\Validator\Constraints as Assert;
class Participant
{
    public static function loadValidatorMetadata(ClassMetadata $metadata)
    {
        $metadata->addPropertyConstraint('firstName', new Assert\Length(array(
            'min'        => 2,
            'max'        => 50,
            'minMessage' => 'Your first name must be at least {{ limit }} characters length',
            'maxMessage' => 'Your first name cannot be longer than than {{ limit }} characters length',
        )));
    }
}
tipo: integer [default option]
Esta opción requerida es el valor de la longitud mínima. La validación fallará si la longitud del valor suministrado es menor que este valor mínimo.
tipo: integer [default option]
Esta opción requerida es el valor de la longitud máxima. La validación fallará si la longitud del valor suministrado es mayor que este valor máximo.
tipo: string predefinido: UTF-8
El juego de caracteres a usar al calcular la longitud del valor. Se utiliza la función grapheme_strlen de PHP si está disponible. Si no, se utiliza la función mb_strlen de PHP si está disponible. Si ninguna está disponible, se utiliza la función strlen de PHP.
tipo: string predefinido: This value is too short. It should have {{ limit }} characters or more (Este debe tener {{ limit }} caracteres o más)
El mensaje que se mostrará si la longitud del valor subyacente es menor que la opción min.
tipo: string predefinido: This value is too long. It should have {{ limit }} characters or less (Este debe tener {{ limit }} caracteres o menos)
El mensaje que se mostrará si la longitud del valor subyacente es mayor que la opción max.
tipo: string predefinido: This value should have exactly {{ limit }} characters. (Este valor debe tener exactamente {{ limit }} caracteres.)
El mensaje que se mostrará si los valores min y max son iguales y la longitud del valor subyacente no es de exactamente este valor.