2011-02-03 3 views
0

URL = http://company.website.com/pages/users/add/Comment trouver une url sous-domaine de

Comment puis-je trouver le sous-domaine de ce via PHP

tel que $subdomain = 'company'

Et $url = '/pages/users/add/'

+0

Même si vous êtes complètement ignorant que PHP dispose de fonctions pour analyser les URL, et ne veulent pas regarder dans le manuel PHP pour trouver, vous devez savoir que pratiquement tous les programmes Le langage a des moyens de rechercher des caractères dans une chaîne et de prendre des sous-chaînes d'une chaîne, ce qui est tout ce dont vous avez besoin pour analyser une URL. –

Répondre

5

Vous aurez envie de jeter un coup d'oeil à parse_url de PHP. Cela vous donnera les composants de base de l'URL qui rendra plus facile à analyser le reste de vos besoins (le sous-domaine)

$url  = 'http://company.website.com/pages/users/add/'; 
$url_parsed = parse_url($url); 
$path  = $url_parsed['path']; // "pages/users/add/" 

Et puis d'un simple regex * pour analyser $url_parsed['host'] pour les sous-domaines:

$subdomain = preg_match("/(?:(.+)\.)?[^\.]+\.[^\.]+/i", $url_parsed['host'); 
// yields array("company.website.com", "company") 

* J'ai testé la regex en JavaScript, vous devrez peut-être la modifier un peu.

1

Ou pour éviter la regex:

$sections = explode('.', $url_parsed["host"]); 
$subdomain = $sections[0]; 
Questions connexes