在 PHP 中,获取 URL 的方法包括:获取完整 URL(方法 1:$_SERVER['REQUEST_URI'];方法 2:$_SERVER['HTTP_HOST'] + $_SERVER['REQUEST_URI'])、相对 URL(方法 1:$_SERVER['PATH_INFO'];方法 2:$_SERVER['SCRIPT_NAME']),以及获取特定 URL 组件(方法:parse_url() 函数)。
如何使用 PHP 获取 URL
在 PHP 中,获取 URL 有多种方法,具体取决于您需要的 URL 类型。
完整 URL
方法 1:$_SERVER['REQUEST_URI']
立即学习“PHP免费学习笔记(深入)”;
此方法返回客户端请求的完整 URL,包括协议、主机名和请求路径。
示例代码:
$url = $_SERVER['REQUEST_URI']; echo $url; // 输出:/my-page.php?id=123
方法 2:$_SERVER['HTTP_HOST'] + $_SERVER['REQUEST_URI']
此方法将主机名和请求路径按预期格式组合在一起。
示例代码:
$host = $_SERVER['HTTP_HOST']; $uri = $_SERVER['REQUEST_URI']; $url = $host . $uri; echo $url; // 输出:my-domain.com/my-page.php?id=123
相对 URL
方法 1:$_SERVER['PATH_INFO']
此方法返回请求路径的相对部分,不包含协议、主机名或查询字符串。
示例代码:
$url = $_SERVER['PATH_INFO']; echo $url; // 输出:/my-page.php
方法 2:$_SERVER['SCRIPT_NAME']
此方法返回当前脚本的文件路径。
示例代码:
$url = $_SERVER['SCRIPT_NAME']; echo $url; // 输出:/my-page.php
获取其他 URL 组件
除了获取完整或相对 URL 外,您还可以获取特定 URL 组件,例如协议、主机名或端口。
方法:parse_url() 函数
此函数将 URL 解析为其组件并将其存储在关联数组中。
示例代码:
$url = 'https://example.com:8080/my-page.php?id=123'; $parsed_url = parse_url($url); echo $parsed_url['scheme']; // https echo $parsed_url['host']; // example.com echo $parsed_url['port']; // 8080
以上就是php怎么获取地址的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号