php获取当前域名

/**

* 取得当前的域名

* @return string

*/

function get_domain() {

    /* 协议 */

    $protocol = (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) ? 'https://' : 'http://';

    /* 域名或IP地址 */

    if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {

        $host = $_SERVER['HTTP_X_FORWARDED_HOST'];

    } elseif (isset($_SERVER['HTTP_HOST'])) {

        $host = $_SERVER['HTTP_HOST'];

    } else {

        /* 端口 */

        if (isset($_SERVER['SERVER_PORT'])) {

            $port = ':' . $_SERVER['SERVER_PORT'];

            if ((':80' == $port && 'http://' == $protocol) || (':443' == $port && 'https://' == $protocol)) {

                $port = '';

            }

        } else {

            $port = '';

        }

        if (isset($_SERVER['SERVER_NAME'])) {

            $host = $_SERVER['SERVER_NAME'] . $port;

        } elseif (isset($_SERVER['SERVER_ADDR'])) {

            $host = $_SERVER['SERVER_ADDR'] . $port;

        }

    }

    return $protocol . $host;

}

你可能感兴趣的:(php获取当前域名)