2011-02-03 60 views
0

URL = http://company.website.com/pages/users/add/如何從一個網址找到子域

我如何通過PHP找到這個子域

這樣$subdomain = 'company'

而且$url = '/pages/users/add/'

+0

即使你完全不知道PHP具有功能解析的網址,並不願意看在PHP手冊中找到它,你應該知道,幾乎每一個編程語言可以搜索字符串中的字符並獲取字符串的子字符串,這就是解析URL所需的全部內容。 – 2011-02-03 08:11:22

回答

5

你會想看看在PHP的parse_url。這會給你的URL的基本組成部分,這將使其更容易分析出你的要求,其餘的(子域)

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

然後一個簡單的正則表達式*解析$url_parsed['host']子域:

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

*我在JavaScript中測試了正則表達式,因此您可能需要稍微調整它。

1

或避免正則表達式:

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