【发布时间】:2013-10-17 16:09:52
【问题描述】:
我需要知道如何在没有 tld 的情况下从 url 获取域名。
这是我所拥有的适用于 .com、.info 等 但不适用于 .co.uk
// get host name from URL
preg_match('@^(?:http://)?([^/]+)@i',
"http://example.co.uk", $matches);
$host = $matches[1];
// get last two segments of host name
preg_match('/([^.]+)\.[^.]+$/', $host, $matches);
echo "domain name is: {$matches[1]}\n";
当我让它调用 "example.co.uk" 域时,它只显示:"co" 当我需要它显示 "example"
谢谢
【问题讨论】:
-
您需要一个公共后缀列表。
-
具体来说,你需要Public Suffix List。
-
我应该在哪里添加公共后缀列表?