PHP获取与替换URL参数的函数示例
154 浏览量
更新于2024-09-01
收藏 80KB PDF 举报
本文主要介绍了在PHP中如何获取当前页面的URL以及如何替换URL中的参数值。提供了两个自编函数,一个是`GetCurUrl()`用于获取当前页面的完整URL,另一个是`url_set_value()`用于设置URL中指定参数的新值。
在PHP中,获取当前页面URL通常需要用到`$_SERVER`全局数组中的`REQUEST_URI`和`PHP_SELF`两个变量。`REQUEST_URI`包含了请求的URI,而`PHP_SELF`则包含当前执行脚本的名称。`GetCurUrl()`函数通过判断这两个变量是否存在和其值来组合出完整的URL。
```php
function GetCurUrl() {
if (!empty($_SERVER["REQUEST_URI"])) {
$scriptName = $_SERVER["REQUEST_URI"];
$nowurl = $scriptName;
} else {
$scriptName = $_SERVER["PHP_SELF"];
if (empty($_SERVER["QUERY_STRING"])) {
$nowurl = $scriptName;
} else {
$nowurl = $scriptName . "?" . $_SERVER["QUERY_STRING"];
}
}
return $nowurl;
}
```
替换URL中参数值的情况较为复杂,因为URL可能有多种格式。`url_set_value()`函数采用了一种通用的方法,首先通过`explode()`函数按问号拆分URL,然后使用`parse_str()`解析查询字符串为关联数组,接着修改数组中指定键的值,最后通过`http_build_query()`重新构建查询字符串并拼接到URL路径后面。
```php
function url_set_value($url, $key, $value) {
$a = explode('?', $url);
$url_f = $a[0];
$query = $a[1];
parse_str($query, $arr);
$arr[$key] = $value;
return $url_f . '?' . http_build_query($arr);
}
```
此外,文中还提到了一个简单的替换示例,但没有展示完整的函数实现。这个例子中,使用了类似的方法,但可能没有`url_set_value()`函数那样通用。在实际开发中,`url_set_value()`函数可以方便地应用于分页类或者需要动态修改URL参数的场景。
这两个函数对于在PHP中处理URL参数非常实用,尤其是当需要动态更新URL或获取当前页面URL时。在进行网页开发,尤其是涉及到URL重定向、参数传递或者页面跳转时,这些函数能够大大简化工作流程。
2011-11-17 上传
2013-10-03 上传
2020-12-18 上传
2020-10-20 上传
2020-10-27 上传
2020-10-21 上传
2020-10-24 上传
2020-10-18 上传
2020-10-24 上传
weixin_38675777
- 粉丝: 3
- 资源: 917
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录