>  기사  >  백엔드 개발  >  PHP는 루트 도메인 이름 획득 방법 요약 코드 예제를 얻습니다.

PHP는 루트 도메인 이름 획득 방법 요약 코드 예제를 얻습니다.

怪我咯
怪我咯원래의
2017-07-16 11:19:472577검색

이 문서의 예는 PHP에서 루트 도메인 이름을 얻는 방법을 요약하고 참고용으로 공유합니다. 구체적인 구현 방법은 다음과 같습니다.

현재 페이지를 방문 중인 도메인 이름만 가져오는 경우 URL 루트 도메인을 추출하려면 PHP의 함수 HTTP_HOST만 사용하면 됩니다. 이름을 정규화해야 합니다. 다음과 같이 몇 가지 구체적인 예를 살펴보겠습니다.

현재 도메인 이름을 얻는 것은 매우 간단합니다.

코드는 다음과 같습니다.

<?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];
    }
    return $re_domain;
}


위 내용은 PHP는 루트 도메인 이름 획득 방법 요약 코드 예제를 얻습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.