PHP 获取请求地址362


在使用 PHP 时,经常需要获取请求页面的地址(URL)。以下介绍了 PHP 中获取请求地址的几种方法,包括:
$_SERVER['REQUEST_URI']
$_SERVER['SCRIPT_NAME']
get_headers()
parse_url()
parse_str()

## $_SERVER['REQUEST_URI']
该超全局变量包含客户端发送的请求的目标 URI。它包括请求路径和查询字符串(如果有)。例如:
```php
$request_uri = $_SERVER['REQUEST_URI'];
```
## $_SERVER['SCRIPT_NAME']
该超全局变量包含当前执行脚本的路径部分。它不包括查询字符串。例如:
```php
$script_name = $_SERVER['SCRIPT_NAME'];
```
## get_headers()
该函数获取 HTTP 响应标头信息。您可以通过检查标头内容来获取请求的地址。例如:
```php
$headers = get_headers($_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
$request_uri = $headers['Location'];
```
## parse_url()
该函数解析给定的 URL 并将其分解为其各个组成部分。它返回一个关联数组,其中包含诸如方案(协议)、主机(域名)和路径等信息。例如:
```php
$url_parts = parse_url($_SERVER['REQUEST_URI']);
$request_uri = $url_parts['path'];
```
## parse_str()
该函数将查询字符串解析为键值对。它返回一个关联数组,其中键是查询字符串参数的名称,值是参数的值。例如:
```php
parse_str($_SERVER['QUERY_STRING'], $query_params);
$request_uri = $query_params['uri'];
```
## 结论
PHP 提供了多种方法来获取请求地址。选择哪种方法取决于具体情况和所需的信息级别。

2024-10-30


上一篇:PHP 对象属性获取

下一篇:字符串替换在 PHP 中的应用