相关文章推荐
失落的金鱼  ·  html2canvas+JsPDF实现单或多 ...·  2 年前    · 
不爱学习的课本  ·  Java单元测试Powermockito和M ...·  2 年前    · 
星星上的企鹅  ·  pl/sql 存储过程 - ...·  2 年前    · 
有情有义的汉堡包  ·  前端唯一标识问题_51CTO博客_前端唯一标识·  3 年前    · 
Code  ›  PHP实现获取url地址中顶级域名的方法示例开发者社区
host url 顶级域名
https://cloud.tencent.com/developer/article/1734373
打盹的手链
2 年前
作者头像
砸漏
0 篇文章

PHP实现获取url地址中顶级域名的方法示例

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 恩蓝脚本 > PHP实现获取url地址中顶级域名的方法示例

PHP实现获取url地址中顶级域名的方法示例

作者头像
砸漏
发布 于 2020-10-29 10:26:44
2.4K 0
发布 于 2020-10-29 10:26:44
举报

本文实例讲述了PHP实现获取url地址中顶级域名的方法。分享给大家供大家参考,具体如下:

parse_url() 获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。

有不足之处还请留言指正,谢谢。

<?php
 * @Author: Ding Jianlong
 * @Date:  2019-03-07 16:14:04
 * @Last Modified by:  Ding Jianlong
 * @Last Modified time: 2019-03-20 13:45:12
header('content-type:text/html;charset=utf-8');
//获取顶级域名
function getTopHost($url){
 $url = strtolower($url);  //首先转成小写
 $hosts = parse_url($url);
 $host = $hosts['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;
// 测试
echo getTopHost("http://ABC.com/s/j?wd=djl"),'<br ';
echo getTopHost("http://www.abc.com/s/j?wd=djl"),'<br ';
echo getTopHost("http://2.www.abc.com/s/j?wd=djl"),'<br ';
echo getTopHost("https://mp.weixin.qq.com/s?__biz=MzA3ODI3ODUzMw=="),'<br ';
echo getTopHost("http://cfi.net.cn/"),'<br ';
echo getTopHost("http://www.cfi.NEt.cn/"),'<br ';
echo getTopHost("https://www.sina.com.cn/?from=kandian"),'<br ';

运行结果:

abc.com abc.com abc.com

 
推荐文章
失落的金鱼  ·  html2canvas+JsPDF实现单或多图片导出PDF_js 图片转pdf-CSDN博客
2 年前
不爱学习的课本  ·  Java单元测试Powermockito和Mockito使用总结_java_脚本之家
2 年前
星星上的企鹅  ·  pl/sql 存储过程 - 等风等雨也等你 - 博客园
2 年前
有情有义的汉堡包  ·  前端唯一标识问题_51CTO博客_前端唯一标识
3 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号