使用preg_replace剥离URL

时间:2015-01-12 14:01:24

标签: php preg-replace

我需要剥离

http://www. 

来自域名以及其后的任何内容,例如

/example 

这样我就可以留下yourdomain.com

我将以下代码添加到文件中:

$domain = HTTP_SERVER;
$domain_name = preg_replace('/^https?:\/\/(?:www\.)?/i', '', $domain);

但是,如果我回显$ domain_name,我仍然会得到一个url,例如yourdomain.com/testsite

任何人都可以看到我在这里做错了,因为它没有删除/ testsite,我认为我做对了。

2 个答案:

答案 0 :(得分:2)

使用此

$url = 'http://www.example.co.uk/directory/level1/last/page.html'; 
$parse= parse_url($url); 
preg_match ("/\.([^\/]+)/", $parse['host'], $mydomain); 
echo $mydomain[1]; 

答案 1 :(得分:0)

这可能是某人不同意的黑客攻击,但我通过使用以下代码解决了这个问题。

$url = HTTP_SERVER;
$parse = parse_url($url);
$domain = $parse['host'];
$domain_name = preg_replace('/(?:www\.)?/i', '', $domain);
echo $domain_name;

如果你能看到不应该使用它的原因,请随时告诉我。总是需要学习的东西:)