php获取根域名方法汇总
本文实例汇总了php获取根域名方法,分享给大家供大家参考。具体实现方法如下:
如果你只简单获取当前访问你页面的域名,我们只需要使用php中的函数HTTP_HOST就可以搞定了,如果是提取url根域名是需要正则的,下面就来看看几个具体实例。
如果是获取当前域名是非常的简单的:
<?php //获取当前的域名: echo$_SERVER['SERVER_NAME']; //获取来源网址,即点击来到本页的上页网址 echo$_SERVER["HTTP_REFERER"]; $_SERVER['REQUEST_URI'];//获取当前域名的后缀 $_SERVER['HTTP_HOST'];//获取当前域名 dirname(__FILE__);//获取当前文件的物理路径 dirname(__FILE__)."/../";//获取当前文件的上一级物理路径 ?>
例子1
functiongetUrlRoot($url){
#添加头部和尾巴
$url=$url."/";
#判断域名
preg_match("/((\w*):\/\/)?\w*\.?([\w|-]*\.(com.cn|net.cn|gov.cn|org.cn|com|net|cn|org|asia|tel|mobi|me|tv|biz|cc|name|info))
\//",$url,$ohurl);
#判断IP
if($ohurl[3]==''){
preg_match("/((\d+\.){3}\d+)\//",$url,$ohip);
return$ohip[1];
}
return$ohurl[3];
}
例子2
/**
*取得根域名
*@paramtype$domain域名
*@returnstring返回根域名
*/
functionGetUrlToDomain($domain){
$re_domain='';
$domain_postfix_cn_array=array("com","net","org","gov","edu","com.cn","cn");
$array_domain=explode(".",$domain);
$array_num=count($array_domain)-1;
if($array_domain[$array_num]=='cn'){
if(in_array($array_domain[$array_num-1],$domain_postfix_cn_array)){
$re_domain=$array_domain[$array_num-2].".".$array_domain[$array_num-1].".".$array_domain[$array_num];
}else{
$re_domain=$array_domain[$array_num-1].".".$array_domain[$array_num];
}
}else{
$re_domain=$array_domain[$array_num-1].".".$array_domain[$array_num];
}
return$re_domain;
}
希望本文所述对大家的php程序设计有所帮助。