请问这个网址的顶级域名是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计292个文字,预计阅读时间需要2分钟。
使用`parse_url()`函数获取URL的host时,如果需要提取多级域名,可以直接从右向左找到最后一个点(`.`)的位置,然后截取最后一个点及之后的部分。以下是一个简化的PHP函数,用于提取URL中的顶级域名:
php
// 示例$url='https://mp.weixin.qq.com';echo getTopHost($url); // 输出: .qq.com?>
parse_url()获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。
代码如下:
<?php
header('content-type:text/html;charset=utf-8');
//获取顶级域名
function getTopHost($url){
$url = strtolower($url); //首先转成小写
$host = parse_url($url)['host'];
//查看是几级域名
$data = explode('.', $host);
$n = count($data);
//判断是否是双后缀
$preg = '/[\w].+\.(com|net|org|gov|edu)\.cn$/';
if(($n > 2) && preg_match($preg,$host)){
//双后缀取后3位
$host = $data[$n-3].'.'.$data[$n-2].'.'.$data[$n-1];
}else{
//非双后缀取后两位
$host = $data[$n-2].'.'.$data[$n-1];
}
return $host;
}
本文共计292个文字,预计阅读时间需要2分钟。
使用`parse_url()`函数获取URL的host时,如果需要提取多级域名,可以直接从右向左找到最后一个点(`.`)的位置,然后截取最后一个点及之后的部分。以下是一个简化的PHP函数,用于提取URL中的顶级域名:
php
// 示例$url='https://mp.weixin.qq.com';echo getTopHost($url); // 输出: .qq.com?>
parse_url()获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。
代码如下:
<?php
header('content-type:text/html;charset=utf-8');
//获取顶级域名
function getTopHost($url){
$url = strtolower($url); //首先转成小写
$host = parse_url($url)['host'];
//查看是几级域名
$data = explode('.', $host);
$n = count($data);
//判断是否是双后缀
$preg = '/[\w].+\.(com|net|org|gov|edu)\.cn$/';
if(($n > 2) && preg_match($preg,$host)){
//双后缀取后3位
$host = $data[$n-3].'.'.$data[$n-2].'.'.$data[$n-1];
}else{
//非双后缀取后两位
$host = $data[$n-2].'.'.$data[$n-1];
}
return $host;
}

