"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo extraer nombres de dominio raíz de subdominios en PHP?

¿Cómo extraer nombres de dominio raíz de subdominios en PHP?

Publicado el 2024-11-25
Navegar:658

How to Extract Root Domain Names from Subdomains in PHP?

Extracción de nombres de dominio de subdominios en PHP

En PHP, obtener el nombre de dominio raíz de un subdominio es una tarea común. Considere un escenario en el que encuentre variables como estas:

here.example.com
example.com
example.org
here.example.org

Su objetivo es transformar estos valores en sus nombres de dominio raíz, como ejemplo.com o ejemplo.org. Para lograr esto, se requiere una función bien diseñada.

Solución

El siguiente fragmento muestra una función llamada get_domain() que extrae efectivamente el nombre del dominio raíz:

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 función utiliza la función parse_url() incorporada para desglosar la URL y recuperar el componente del host. Posteriormente, emplea una expresión regular para validar y extraer el nombre de dominio raíz, asegurando que cumpla con las convenciones de nomenclatura de dominio comunes.

Al llamar a get_domain() con la URL deseada, puede aislar sin esfuerzo el nombre de dominio raíz. :

print get_domain("http://somedomain.co.uk"); // outputs 'somedomain.co.uk'

En los casos en los que la URL no se ajusta a las estructuras de dominio aceptables, la función maneja con elegancia estos casos extremos devolviendo false.

Declaración de liberación Este artículo se reimprime en: 1729555699 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3