Foros del Web » Programando para Internet » PHP »

Obtener el dominio

Estas en el tema de Obtener el dominio en el foro de PHP en Foros del Web. Gogleando encontré esta pequeña función que me devuelve el dominio de una url pero no me funciona por ejemplo para dominios: Cita: dominio.com.co ---> com.co ...
  #1 (permalink)  
Antiguo 17/04/2011, 06:44
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 11 meses
Puntos: 3
Obtener el dominio

Gogleando encontré esta pequeña función
que me devuelve el dominio de una url
pero no me funciona por ejemplo para
dominios:

Cita:
dominio.com.co ---> com.co
dominio.gov.co ---> gov.co
con dominios de este tipo si funciona normal:

Cita:
dominio.com ---> dominio.com

Código PHP:
function getdomain($url) {
    
$components parse_url($url);
    
preg_match("/\.([^\/]+)/"$components['host'],$domain);
    return 
strtolower($domain[1]);

  #2 (permalink)  
Antiguo 17/04/2011, 06:53
 
Fecha de Ingreso: noviembre-2009
Mensajes: 226
Antigüedad: 15 años
Puntos: 19
Respuesta: Obtener el dominio

Una forma de hacerlo puede ser buscando el primer simbolo "/" que aparezca...

Un saludo
__________________
Mi blog: magdkudama.com

Mi clase de validación de datos: magdkudama.com/validation
  #3 (permalink)  
Antiguo 17/04/2011, 06:56
 
Fecha de Ingreso: septiembre-2008
Ubicación: Lanzarote, Canarias
Mensajes: 486
Antigüedad: 16 años, 2 meses
Puntos: 41
Respuesta: Obtener el dominio

En el manual de php tienes ya un ejemplo creado de como hacerlo... http://php.net/manual/es/function.preg-match.php

Código:
<?php
// obtiene el nombre del host de la URL
preg_match('@^(?:http://)?([^/]+)@i',
    "http://www.php.net/index.html", $coincidencias);
$host = $coincidencias[1];

// obtiene los dos últimos segmentos del nombre del host
preg_match('/[^.]+\.[^.]+$/', $host, $coincidencias);
echo "El nombre de dominio es: {$coincidencias[0]}\n";
?>
  #4 (permalink)  
Antiguo 17/04/2011, 09:17
Avatar de JesusDavidValdivia  
Fecha de Ingreso: enero-2011
Ubicación: Mexico
Mensajes: 46
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Obtener el dominio

No seria:

Código php:
Ver original
  1. <?php
  2. $host=$_SERVER['SERVER_NAME']; // Todo Esto De los Server es en mayusculas
  3. //Usando Explode Para Separarlo
  4. $host_array=explode(".",$host);
  5. $dominio=$host_array[0];
  6. //Comprobamos Que No Este Definido El Array 2
  7. if(empty($host_array[2])){
  8. // Hacemos La Extencion
  9. $extencion=$host_array[1];
  10. } else {
  11. // Concatenamos Los 2 Arryas
  12. $extencion=$host_array[1].".".$host_array[2];
  13. }
  14. echo $host."<br>";
  15. echo $dominio."<br>";
  16. echo $extencion;
  17. ?>

Última edición por JesusDavidValdivia; 17/04/2011 a las 09:49 Razón: Mejora De Identificacion

Etiquetas: dominios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:31.