Extraindo nomes de domínio de subdomínios em PHP
Em PHP, obter o nome de domínio raiz de um subdomínio é uma tarefa comum. Considere um cenário em que você encontra variáveis como estas:
here.example.com example.com example.org here.example.org
Você pretende transformar esses valores em seus nomes de domínio raiz, como example.com ou example.org. Para conseguir isso, é necessária uma função bem elaborada.
Solução
O trecho a seguir demonstra uma função chamada get_domain() que extrai efetivamente o nome de domínio raiz:
function get_domain($url)
{
$pieces = parse_url($url);
$domain = isset($pieces['host']) ? $pieces['host'] : '';
if (preg_match('/(?P[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)) {
return $regs['domain'];
}
return false;
}
Esta função utiliza a função integrada parse_url() para quebrar o URL e recuperar o componente host. Posteriormente, ele emprega uma expressão regular para validar e extrair o nome de domínio raiz, garantindo que ele siga as convenções comuns de nomenclatura de domínio.
Ao chamar get_domain() com o URL desejado, você pode isolar facilmente o nome de domínio raiz :
print get_domain("http://somedomain.co.uk"); // outputs 'somedomain.co.uk'
Nos casos em que o URL não está em conformidade com estruturas de domínio aceitáveis, a função lida normalmente com esses casos extremos retornando false.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3