Home >php教程 >php手册 >php获取根域名几个示例

php获取根域名几个示例

WBOY
WBOYOriginal
2016-05-26 08:21:111226browse

如果你只简单获取当前访问你页面的域名,我们只需要使用php中的函数HTTP_HOST就可以搞定了,如果是提取url根域名是需要正则的,下面看我整理的几个例子.

如果是获取当前域名是非常的简单的,代码如下:

<?php 
//获取当前的域名: 
echo $_SERVER[&#39;SERVER_NAME&#39;]; 
//获取来源网址,即点击来到本页的上页网址 
echo $_SERVER["HTTP_REFERER"]; 
$_SERVER[&#39;REQUEST_URI&#39;];//获取当前域名的后缀 
$_SERVER[&#39;HTTP_HOST&#39;];//获取当前域名 
dirname(__FILE__);//获取当前文件的物理路径 
dirname(__FILE__)."/../";//获取当前文件的上一级物理路径

例子1,代码如下:

function getUrlRoot($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] == &#39;&#39;){ 
                preg_match("/((\d+\.){3}\d+)\//", $url, $ohip); 
                return $ohip[1]; 
        } 
        return $ohurl[3]; 
}

例子2,代码如下:

/** 
 * 取得根域名 
 * @param type $domain 域名 
 * @return string 返回根域名 
 */ 
function GetUrlToDomain($domain) { 
    $re_domain = &#39;&#39;; 
    $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] == &#39;cn&#39;) { 
        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];//开源代码phprm.com 
    } 
    return $re_domain; 
}


本文地址:

转载随意,但请附上文章地址:-)

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn