lab/cacme/vendor/workerman/validation/library/Rules/PublicDomainSuffix.php
2024-08-05 22:57:28 +08:00

38 lines
709 B
PHP

<?php
/*
* Copyright (c) Alexandre Gomes Gaigalas <alganet@gmail.com>
* SPDX-License-Identifier: MIT
*/
declare(strict_types=1);
namespace Respect\Validation\Rules;
use Respect\Validation\Helpers\DomainInfo;
use function array_pop;
use function explode;
final class PublicDomainSuffix extends AbstractSearcher
{
/**
* @var string[]
*/
private $domainInfo;
/**
* {@inheritDoc}
*/
protected function getDataSource($input = null): array
{
$parts = explode('.', $input);
$tld = array_pop($parts);
$domainInfo = new DomainInfo($tld);
$this->domainInfo = $domainInfo->getPublicSuffixes();
return $this->domainInfo;
}
}