vendor/symfony/validator/Constraints/Url.php line 23

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Symfony package.
  4.  *
  5.  * (c) Fabien Potencier <fabien@symfony.com>
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. namespace Symfony\Component\Validator\Constraints;
  11. use Symfony\Component\Validator\Constraint;
  12. use Symfony\Component\Validator\Exception\InvalidArgumentException;
  13. /**
  14.  * @Annotation
  15.  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  16.  *
  17.  * @author Bernhard Schussek <bschussek@gmail.com>
  18.  */
  19. class Url extends Constraint
  20. {
  21.     /**
  22.      * @deprecated since Symfony 4.1
  23.      */
  24.     public const CHECK_DNS_TYPE_ANY 'ANY';
  25.     /**
  26.      * @deprecated since Symfony 4.1
  27.      */
  28.     public const CHECK_DNS_TYPE_NONE false;
  29.     /**
  30.      * @deprecated since Symfony 4.1
  31.      */
  32.     public const CHECK_DNS_TYPE_A 'A';
  33.     /**
  34.      * @deprecated since Symfony 4.1
  35.      */
  36.     public const CHECK_DNS_TYPE_A6 'A6';
  37.     /**
  38.      * @deprecated since Symfony 4.1
  39.      */
  40.     public const CHECK_DNS_TYPE_AAAA 'AAAA';
  41.     /**
  42.      * @deprecated since Symfony 4.1
  43.      */
  44.     public const CHECK_DNS_TYPE_CNAME 'CNAME';
  45.     /**
  46.      * @deprecated since Symfony 4.1
  47.      */
  48.     public const CHECK_DNS_TYPE_MX 'MX';
  49.     /**
  50.      * @deprecated since Symfony 4.1
  51.      */
  52.     public const CHECK_DNS_TYPE_NAPTR 'NAPTR';
  53.     /**
  54.      * @deprecated since Symfony 4.1
  55.      */
  56.     public const CHECK_DNS_TYPE_NS 'NS';
  57.     /**
  58.      * @deprecated since Symfony 4.1
  59.      */
  60.     public const CHECK_DNS_TYPE_PTR 'PTR';
  61.     /**
  62.      * @deprecated since Symfony 4.1
  63.      */
  64.     public const CHECK_DNS_TYPE_SOA 'SOA';
  65.     /**
  66.      * @deprecated since Symfony 4.1
  67.      */
  68.     public const CHECK_DNS_TYPE_SRV 'SRV';
  69.     /**
  70.      * @deprecated since Symfony 4.1
  71.      */
  72.     public const CHECK_DNS_TYPE_TXT 'TXT';
  73.     public const INVALID_URL_ERROR '57c2f299-1154-4870-89bb-ef3b1f5ad229';
  74.     protected static $errorNames = [
  75.         self::INVALID_URL_ERROR => 'INVALID_URL_ERROR',
  76.     ];
  77.     public $message 'This value is not a valid URL.';
  78.     /**
  79.      * @deprecated since Symfony 4.1
  80.      */
  81.     public $dnsMessage 'The host could not be resolved.';
  82.     public $protocols = ['http''https'];
  83.     /**
  84.      * @deprecated since Symfony 4.1
  85.      */
  86.     public $checkDNS self::CHECK_DNS_TYPE_NONE;
  87.     public $relativeProtocol false;
  88.     public $normalizer;
  89.     public function __construct($options null)
  90.     {
  91.         if (\is_array($options)) {
  92.             if (\array_key_exists('checkDNS'$options)) {
  93.                 @trigger_error(sprintf('The "checkDNS" option in "%s" is deprecated since Symfony 4.1. Its false-positive rate is too high to be relied upon.'self::class), \E_USER_DEPRECATED);
  94.             }
  95.             if (\array_key_exists('dnsMessage'$options)) {
  96.                 @trigger_error(sprintf('The "dnsMessage" option in "%s" is deprecated since Symfony 4.1.'self::class), \E_USER_DEPRECATED);
  97.             }
  98.         }
  99.         parent::__construct($options);
  100.         if (null !== $this->normalizer && !\is_callable($this->normalizer)) {
  101.             throw new InvalidArgumentException(sprintf('The "normalizer" option must be a valid callable ("%s" given).', \is_object($this->normalizer) ? \get_class($this->normalizer) : \gettype($this->normalizer)));
  102.         }
  103.     }
  104. }