Новое в Symfony 5.1: Проверка имени хоста

Symfony предоставляет десятки валидаторов для проверки достоверности ваших данных. Это включает в себя несколько валидаторов, связанных с компьютерами и Интернетом, таких как валидатор электронной почты, валидатор IP-адреса и валидатор URL.

В Symfony 5.1 добавили новую в эту группу: валидатор имени хоста, который проверяет, что данное значение считается допустимым в качестве имени хоста:

// src/Entity/ServerSettings.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class ServerSettings
{
    /**
     * @Assert\Hostname(message="The server name must be a valid hostname.")
     */
    protected $name;
}

Валидатор Hostname учитывает домены верхнего уровня, зарезервированные в RFC 2606 (.example.com и т. д.), поэтому вам не придется иметь дело с этими особыми случаями. Требование о включении домена верхнего уровня или нет также настраивается, как вы можете прочитать в документации этого валидатора.