本文實例講述了PHP實現(xiàn)獲取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); //首先轉(zhuǎn)成小寫 $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>';
運行結(jié)果:
abc.com
abc.com
abc.com
qq.com
cfi.net.cn
cfi.net.cn
sina.com.cn
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學(xué)運算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
標(biāo)簽:麗江 銅陵 十堰 巴彥淖爾 臨沂 重慶 衡陽 鷹潭
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP實現(xiàn)獲取url地址中頂級域名的方法示例》,本文關(guān)鍵詞 PHP,實現(xiàn),獲取,url,地址,中,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。