技术文摘
PHP获取当前url具体方法详解
2025-01-02 01:33:06 小编
PHP获取当前url具体方法详解
在PHP开发中,有时候我们需要获取当前页面的URL地址,比如用于日志记录、生成分享链接或者根据不同的URL进行特定的业务逻辑处理等。下面将详细介绍几种在PHP中获取当前URL的方法。
方法一:使用$_SERVER['REQUEST_URI']
$_SERVER['REQUEST_URI'] 变量包含了当前请求的URI,也就是从域名后面开始的部分。示例代码如下:
<?php
$current_uri = $_SERVER['REQUEST_URI'];
$current_url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on'? "https" : "http"). "://$_SERVER[HTTP_HOST]$current_uri";
echo $current_url;
?>
在这段代码中,首先获取了 REQUEST_URI,然后根据是否是HTTPS协议构建完整的URL。
方法二:使用$_SERVER['PHP_SELF']
$_SERVER['PHP_SELF'] 包含了当前正在执行的PHP脚本的文件名。结合其他服务器变量可以构建出当前URL。示例如下:
<?php
$current_file = $_SERVER['PHP_SELF'];
$current_url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on'? "https" : "http"). "://$_SERVER[HTTP_HOST]$current_file";
if (!empty($_SERVER['QUERY_STRING'])) {
$current_url.= '?'. $_SERVER['QUERY_STRING'];
}
echo $current_url;
?>
这里先构建了基本的URL,然后如果有查询字符串则添加到URL后面。
方法三:使用parse_url()函数
可以先获取完整的请求URL,然后使用 parse_url() 函数对其进行解析和处理。示例代码:
<?php
$full_url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on'? "https" : "http"). "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$url_parts = parse_url($full_url);
$current_url = $url_parts['scheme'].'://'.$url_parts['host'].$url_parts['path'];
if (isset($url_parts['query'])) {
$current_url.= '?'.$url_parts['query'];
}
echo $current_url;
?>
以上就是PHP中获取当前URL的几种常见方法,开发者可以根据具体的需求和场景选择合适的方式来获取准确的当前URL地址。
- C#队列(Queue)基本使用全攻略
- 微服务究竟是什么,您懂了吗?
- ViewPager 页面滑动效果及自定义 PageTransformer 实现所需变换
- 深入剖析 Babel - 项目管理工具 Lerna 解读
- CSS 权重计算规则浅谈:你是否已掌握?
- Spring Boot 里的六种 API 请求参数读取方法
- 使用 BigDecimal 前必知的四大坑
- 零到一,亲授部署线上项目秘籍
- C 语言字符串以\0 作为结束标志的原因
- C# 里的 Action 与 Func 委托
- 解析十个经典 Python 设计模式
- 时间序列中的变点检测算法,你掌握了吗?
- Python 中十个 lambda 表达式让代码更简洁的应用
- CSS3 渐显疲态,CSS4 与 CSS5 即将登场!
- vivo 产品管理于 CICD 的落地实践