本文实例讲述了PHP实现获取url地址中顶级域名的方法。分享给大家供大家参考,具体如下:
  parse_url()获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。
  有不足之处还请留言指正,谢谢。
 * @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实现获取url地址中顶级域名的方法。分享给大家供大家参考,具体如下:  parse_url()获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。  有不足之处还请留言指正,谢谢。&lt;?php/** * @Author: Ding Jianlong * @Date:  2019-03-07 16:14:...
				
大家都知道Js有同源策略,就是主域名不同嵌套的iframe不允许Js通信的。 比如我有一个网站,网站要嵌入其网站的页面。那么我可以使用iframe引用第三方网站的地址即可。 但是问题也来的iframe的高度是固定的不能与第三方网站很好的融合,又例如第三方网站使用了瀑布流插件,要滚动加载自动计算高度,那么先说跨域:iframe主域名不同跨域方法,假如网站 A.com  B.com   A 里面放入一个iframe 引用了B.com,这种情况下B.com里面的Js是无法访问到A.com的。JS跨域必须是同源,就是同一个主域名,那肿么办呢? 我们可以在B.com在引入一个iframe,暂且叫C吧
function get_host($to_virify_url = ''){ $url = $to_virify_url ? $to_virify_url : $_SERVER['HTTP_HOST']; $da...
parse_url()获取到的host时多级域名,如:mp.weixin.qq.com。做域名黑名单的时候我们需要得到顶级域名。 有不足之处还请留言指正,谢谢。 <?php * @Author: Ding Jianlong * @Date: 2019-03-07 16:14:04 * @Last Modified by: Ding Jianlong * @La...
url的信息,可以使用pythonurlparse模块进行解析,但是有个缺陷是无法提顶级域名。参考博文:https://blog.csdn.net/weixin_44799217/article/details/124591187 提较为复杂的url信息,还可以使用tld模块。 安装方法:: http://www.baidu.com 后缀支持: ".com", ".cn", ".com.cn", ".gov", ".net", ".edu.cn", ".net.cn", ".org.cn", ".co.jp", ".gov.cn", ".co.uk", "ac.cn", ".edu", ".tv",".info", ".ac", ".ag", ".am", ".at", ".be", ".biz", ".bz", ".cc", ".de", ".es", ".eu", ".fm", ".gs", ".hk", ".in", ".info", ".io", ".it", ".jp", ".la", ".md", ".ms", ".name", ".nl", ".nu", ".org", ".pl", ".ru", ".sc", ".se", ".sg", ".sh", ".tc", ".tk", ".tv", ".tw", ".us", ".co",".uk", ".vc", ".vg", ".ws", ".il", ".li", ".nz"
不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------------------------------------------------------------------------------------------------------------------------------------------------------- if (strpos($str, $old_domain) !== false) { // 使用 str_replace 函数进行替换 $str = str_replace($old_domain, $new_domain, $str); echo $str; // 输出:这是一个包含旧域名的字符串:http://www.new.com/path/to/file.html 这段代码,我们首先定义了待替换的字符串 `$str`,然后定义了需要替换的旧域名 `$old_domain` 和需要替换成的新域名 `$new_domain`。接着,使用 `strpos` 函数判断字符串是否包含旧域名,如果包含则使用 `str_replace` 函数进行替换。最后输出替换后的字符串。