captain_torche
mercredi 29 mars 2006 à 09:06
Si tu veux juste la forme www.site.com, il va falloir utiliser la fonction
str_replace pour supprimer 'http://', la fonction
strpos pour trouver la place du premier slash, et la fonction
susbtr pour retourner la portion d'adresse qui te convienne.
Ca pourrait donner, par exemple :
CODE
function url1($url) {
$url_sans_http = str_replace('http://', '', $url);
$position_slash = strpos($url_sans_http, '/');
return substr($url_sans_http, 0, $position_slash);
}
echo url1('www.le-site.com/lien-de-fou/hyper-long/puis-enfin/la-page.htm');
Tu peux également utiliser les expressions régulières :
CODE
function url2($url) {
if(ereg("(http://)?([^/]+).*", $url, $reg))
return $reg[2];
}
echo url2('www.le-site.com/lien-de-fou/hyper-long/puis-enfin/la-page.htm');
Je ne saurais pas te dire laquelle des deux fonctions est la moins gourmande en ressources côté serveur, si jamais un autre hubber le sait, je serais intéressé de le découvrir.