php怎么获取当前域名

不及物动词 其他 683

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,我们可以通过一些内置的函数来获取当前域名。下面是几种常用的方法:

    方法一:使用$_SERVER全局变量
    “`php
    $domain = $_SERVER[‘HTTP_HOST’];
    “`

    方法二:使用getenv()函数
    “`php
    $domain = getenv(‘HTTP_HOST’);
    “`

    方法三:使用$_SERVER全局变量和parse_url()函数
    “`php
    $domain = parse_url($_SERVER[‘HTTP_REFERER’], PHP_URL_HOST);
    “`
    注:这种方法是获取当前请求的Referer信息,并通过parse_url()函数解析出域名。

    方法四:使用$_SERVER全局变量和parse_url()函数
    “`php
    $domain = parse_url($_SERVER[‘REQUEST_URI’], PHP_URL_HOST);
    “`
    注:这种方法是获取当前请求的URI信息,并通过parse_url()函数解析出域名。

    需要注意的是,以上方法获取到的域名可能包含端口号和子域名,如果只需要主域名,则可以使用其他函数进行处理,例如get_domain()函数:
    “`php
    function get_domain($url) {
    $parsed_url = parse_url($url);
    $domain = $parsed_url[‘host’];
    $domain = preg_replace(‘/^www\./’, ”, $domain);
    return $domain;
    }

    $domain = get_domain($domain);
    “`
    使用该函数可以去除域名中的子域名和www前缀。

    以上是几种常用的方法来获取当前域名的方式。根据具体的需求可以选择适合的方法来获取域名。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,获取当前域名可以使用以下几种方法:

    1. 使用$_SERVER[‘HTTP_HOST’]变量
    $_SERVER[‘HTTP_HOST’]变量是存储请求头中域名部分的变量,可以用来获取当前域名。例如:

    “`php
    $domain = $_SERVER[‘HTTP_HOST’];
    echo ‘当前域名是:’ . $domain;
    “`

    2. 使用$_SERVER[‘SERVER_NAME’]变量
    $_SERVER[‘SERVER_NAME’]变量也可以用来获取当前域名。不同的是,HTTP_HOST是用户请求的域名,而SERVER_NAME是服务器配置的域名。如果服务器配置中没有指定域名,则SERVER_NAME和HTTP_HOST的值会相同。

    “`php
    $domain = $_SERVER[‘SERVER_NAME’];
    echo ‘当前域名是:’ . $domain;
    “`

    3. 使用$_SERVER[‘SERVER_ADDR’]变量
    $_SERVER[‘SERVER_ADDR’]变量存储的是服务器的IP地址,如果想要获取完整的域名,可以将其与$_SERVER[‘SERVER_NAME’]变量拼接起来。

    “`php
    $ip = $_SERVER[‘SERVER_ADDR’];
    $domain = $_SERVER[‘SERVER_NAME’];
    echo ‘当前域名是:’ . $domain . ‘ IP地址是:’ . $ip;
    “`

    4. 使用parse_url()函数解析URL
    使用parse_url()函数可以将URL字符串解析为数组格式,其中的host键对应的值就是域名部分。

    “`php
    $url = ‘http://www.example.com’;
    $domain = parse_url($url, PHP_URL_HOST);
    echo ‘当前域名是:’ . $domain;
    “`

    5. 使用$_SERVER[‘REQUEST_URI’]变量获取完整的URL,并解析出域名部分
    可以将$_SERVER[‘REQUEST_URI’]变量与parse_url()函数结合使用,先获取完整的URL,然后解析出域名部分。

    “`php
    $url = ‘http://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
    $domain = parse_url($url, PHP_URL_HOST);
    echo ‘当前域名是:’ . $domain;
    “`

    以上是在PHP中获取当前域名的几种方法。根据具体需求选择合适的方法来获取域名,可以根据应用场景来灵活使用。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    获取当前域名可以使用以下几种方法:

    1. 使用$_SERVER[‘HTTP_HOST’]获取当前域名
    “`php
    $domain = $_SERVER[‘HTTP_HOST’];
    echo “当前域名是:”.$domain;
    “`

    2. 使用$_SERVER[‘SERVER_NAME’]获取当前域名
    “`php
    $domain = $_SERVER[‘SERVER_NAME’];
    echo “当前域名是:”.$domain;
    “`

    3. 使用$_SERVER[‘SERVER_ADDR’]获取当前域名
    “`php
    $domain = $_SERVER[‘SERVER_ADDR’];
    echo “当前域名是:”.$domain;
    “`

    4. 使用$_SERVER[‘SERVER_PORT’]获取当前域名
    “`php
    $domain = $_SERVER[‘SERVER_PORT’];
    echo “当前域名是:”.$domain;
    “`

    5. 使用$_SERVER[‘REQUEST_URI’]获取当前域名
    “`php
    $domain = $_SERVER[‘REQUEST_URI’];
    echo “当前域名是:”.$domain;
    “`

    6. 使用$_SERVER[‘HTTPS’]获取当前域名
    “`php
    if(isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’) {
    $domain = “https://”.$_SERVER[‘HTTP_HOST’];
    } else {
    $domain = “http://”.$_SERVER[‘HTTP_HOST’];
    }
    echo “当前域名是:”.$domain;
    “`

    以上是获取当前域名的几种常用方法,根据实际需求选择适合的方法即可。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部