主页 > 知识库 > PHP实现获取url地址中顶级域名的方法示例

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

热门标签:银行业务 Linux服务器 阿里云 服务器配置 电子围栏 科大讯飞语音识别系统 Mysql连接数设置 团购网站

本文实例讲述了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
qq.com
cfi.net.cn
cfi.net.cn
sina.com.cn

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php socket用法总结》、《php字符串(string)用法总结》、《PHP数学运算技巧总结》、《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP网络编程技巧总结》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:
  • PHP实现的获取文件mimes类型工具类示例
  • php文件类型MIME对照表(比较全)
  • php准确获取文件MIME类型的方法
  • php实现获取文件mime类型的方法
  • PHP 利用Mail_MimeDecode类提取邮件信息示例
  • PHP的反射动态获取类方法、属性、参数操作示例
  • php 比较获取两个数组相同和不同元素的例子(交集和差集)
  • PHP实现获取文件mime类型多种方法解析

标签:广元 大理 萍乡 江苏 枣庄 衡水 蚌埠 衢州

巨人网络通讯声明:本文标题《PHP实现获取url地址中顶级域名的方法示例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266