PHP获取网址的顶级域名函数代码


Posted in PHP onSeptember 24, 2012

PHP获取网址的顶级域名函数

目前国际顶级域名有:com|edu|gov|int|mil|net|org|biz|info|pro|name|museum|coop|aero|xxx|idv|mobi|cc|me
地域型域名比较多,应该是每个国家地区都会有吧,有心可以去收集,不过据我了解这个域名都是2个字母构成的,它可以单独使用也可以喝国际顶级域名结合使用地域型域名如:
cn 中国
tw 台湾
hk 香港

域名例子:
3water.cn
baidu.com
3water.com.cn

以3water.dom.cn为例:phpwind(自定义部分).com(国际域名部分).cn(地域型域名部分)

获取顶级域名的PHP函数

function getdomain($url) { 
$host = strtolower ( $url ); 
if (strpos ( $host, '/' ) !== false) { 
$parse = @parse_url ( $host ); 
$host = $parse ['host']; 
} 
$topleveldomaindb = array ('com', 'edu', 'gov', 'int', 'mil', 'net', 'org', 'biz', 'info', 'pro', 'name', 'museum', 'coop', 'aero', 'xxx', 'idv', 'mobi', 'cc', 'me' ); 
$str = ''; 
foreach ( $topleveldomaindb 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; 
}

使用例子:
$str = "https://3water.com/tools/zhengze.html"; 
echo getdomain ( $str );

输出:3water.com
PHP 相关文章推荐
PHP Squid中可缓存的动态网页设计
Sep 17 PHP
php 动态多文件上传
Jan 18 PHP
基于PHP Socket配置以及实例的详细介绍
Jun 13 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
Mar 12 PHP
php 魔术方法详解
Nov 11 PHP
php中PDO方式实现数据库的增删改查
May 17 PHP
一波PHP中cURL库的常见用法代码示例
May 06 PHP
PHP+MySql+jQuery实现的"顶"和"踩"投票功能
May 21 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
Sep 11 PHP
PHP封装函数实现生成随机的字符串验证码
Jan 24 PHP
Symfony查询方法实例小结
Jun 28 PHP
php+redis实现消息队列功能示例
Sep 19 PHP
ThinkPHP关联模型操作实例分析
Sep 23 #PHP
Linux下CoreSeek及PHP扩展模块的安装
Sep 23 #PHP
Thinkphp模板中使用自定义函数的方法
Sep 23 #PHP
如何获知PHP程序占用多少内存(memory_get_usage)
Sep 23 #PHP
PHP管理内存函数 memory_get_usage()使用介绍
Sep 23 #PHP
查找mysql字段中固定字符串并替换的几个方法
Sep 23 #PHP
php获取ip的三个属性区别介绍(HTTP_X_FORWARDED_FOR,HTTP_VIA,REMOTE_ADDR)
Sep 23 #PHP
You might like
php中计算未知长度的字符串哪个字符出现的次数最多的代码
2012/08/14 PHP
PHP setTime 设置当前时间的代码
2012/08/27 PHP
php的webservice的wsdl的XML无法显示问题的解决方法
2014/03/11 PHP
php微信公众开发之获取周边酒店信息的方法
2014/12/22 PHP
PHP+MySQL存储数据常见中文乱码问题小结
2016/06/13 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
浅析JavaScript中的常用算法与函数
2013/11/21 Javascript
利用JQuery制作符合Web标准的QQ弹出消息
2014/01/14 Javascript
js实现点击链接后延迟3秒再跳转的方法
2015/06/05 Javascript
javascript实现二级级联菜单的简单制作
2015/11/19 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
jQuery购物网页经典制作案例
2016/08/19 Javascript
利用Node.JS实现邮件发送功能
2016/10/21 Javascript
微信小程序 图片绝对定位(背景图片)
2017/04/05 Javascript
简单的JS控制button颜色随点击更改的实现方法
2017/04/17 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
详细分析React 表单与事件
2020/07/08 Javascript
[03:40]DOTA2英雄梦之声_第01期_炼金术士
2014/06/23 DOTA
[48:28]完美世界DOTA2联赛循环赛FTD vs Magma第二场 10月30日
2020/10/31 DOTA
Python编码爬坑指南(必看)
2016/06/10 Python
2018年Python值得关注的开源库、工具和开发者(总结篇)
2018/01/04 Python
python关于矩阵重复赋值覆盖问题的解决方法
2019/07/19 Python
Python 3.8 新功能全解
2019/07/25 Python
python3 反射的四种基本方法解析
2019/08/26 Python
Django之form组件自动校验数据实现
2020/01/14 Python
python dumps和loads区别详解
2020/02/04 Python
移动端Html5页面生成图片解决方案
2018/08/07 HTML / CSS
程序员经常用到的UNIX命令
2015/04/13 面试题
表扬通报怎么写
2015/01/16 职场文书
物业保安辞职信
2015/05/12 职场文书
离婚纠纷代理词
2015/05/23 职场文书
律政俏佳人观后感
2015/06/09 职场文书
《实心球》教学反思
2016/02/23 职场文书
你为什么是穷人?可能是这5个缺点造成
2019/07/11 职场文书
pytorch训练神经网络爆内存的解决方案
2021/05/22 Python