获取一个域名的主域名
支持传入URL
HttpIO::get_primary_domain('test.myqee.com'); //myqee.com
HttpIO::get_primary_domain('http://v3.myqee.com/docs/'); //myqee.com
string Core_HttpIO::get_primary_domain( string $host )
参数列表
参数 类型 描述 默认值 $host
string
$host
string
public static function get_primary_domain($host)
{
$host = strtolower($host);
if(false!==strpos($host, '/'))
{
$parse = @parse_url($host);
$host = $parse['host'];
}
$top_level_domain = array
(
'com',
'edu',
'gov',
'int',
'mil',
'net',
'org',
'biz',
'info',
'pro',
'name',
'museum',
'coop',
'aero',
'xxx',
'idv',
'mobi',
'cc',
'me'
);
$str='';
foreach($top_level_domain as $v)
{
$str .= ($str ? '|' : '') . $v;
}
$matchstr='[^\.]+\.(?:('.$str.')|\w{2}|(('.$str.')\.\w{2}))$';
if(preg_match("/". $matchstr ."/ies", $host, $matchs))
{
$domain = $matchs['0'];
}
else
{
$domain = $host;
}
return $domain;
}