PHP实现获取url地址中顶级域名的方法示例
发布:smiling 来源: PHP粉丝网 添加日期:2021-11-25 14:08:52 浏览: 评论:0
这篇文章主要介绍了PHP实现获取url地址中顶级域名的方法,结合实例形式分析了php使用parse_url()针对URL域名解析相关操作技巧,需要的朋友可以参考下。
本文实例讲述了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
Tags: PHP获取url PHP顶级域名
相关文章
- ·php 获取当前脚本的url(2013-11-12)
- ·PHP中获取URL完整路径程序代码(2014-07-28)
- ·php获取url地址中的域名几种方法(2015-04-09)
- ·php获取URL各部分参数的代码示例(2020-02-15)
- ·php获取URL各部分参数(2020-02-17)
- ·php获取URL中带#号等特殊符号参数的解决方法(2021-04-10)
- ·php获取url参数方法总结(2021-04-26)
- ·php解析url并得到url中的参数及获取url参数的四种方式(2021-06-21)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)