使用parse_str函数可以将查询字符串解析到变量中。该函数的原型如下:
使用parse_str函数可以将查询字符串解析到变量中。该函数的原型如下:
void parse_str (string $str, array &$result)
其中,$str参数为待解析的查询字符串,$result参数是一个引用,表示解析结果将存放在此变量中。以下是使用parse_str函数的完整步骤:
- 首先,通过
$_SERVER['QUERY_STRING']获取到当前请求 URL 中的查询字符串,比如:
php
$query_string = $_SERVER['QUERY_STRING'];
- 然后,将查询字符串传入
parse_str函数,并作为第二个参数传入一个数组,以将解析结果存储在该数组中:
php
$vars = array();
parse_str($query_string, $vars);
在上面的代码中,我们定义了一个名为$vars的空数组,然后使用parse_str函数将查询字符串解析到此数组中。最终,$vars数组中就包含了查询字符串中的所有参数及其值。
另外,由于parse_str函数将参数名和值都解析到一个数组中,因此可以通过使用 extract函数来快速将解析结果存储到变量中。例如:
parse_str($query_string, $vars);
extract($vars);
下面给出两个示例说明:
示例1:解析简单查询字符串
假设当前请求 URL 中包含以下查询字符串:
page=2&sort=title&order=asc
可以使用以下代码将其解析到一个数组中:
$query_string = 'page=2&sort=title&order=asc';
$vars = array();
parse_str($query_string, $vars);
var_dump($vars);
输出结果为:
array(3) {
["page"]=>
string(1) "2"
["sort"]=>
string(5) "title"
["order"]=>
string(3) "asc"
}
示例2:利用extract函数快速将解析结果存储到变量中
假设当前请求 URL 中包含以下查询字符串:
name=Tom&age=24&email=tom@example.com
可以使用以下代码将其解析到多个变量中:
$query_string = 'name=Tom&age=24&email=tom@example.com';
$vars = array();
parse_str($query_string, $vars);
extract($vars);
echo $name; // 输出:Tom
echo $age; // 输出:24
echo $email; // 输出:tom@example.com
本文标题为:php使用parse_str实现查询字符串解析到变量中的方法
基础教程推荐
- laravel 实现设置时区的简单方法 2023-02-21
- thinkphp5实用入门进阶知识点和各种常用功能代码汇总 2023-07-12
- PHP 修改SESSION的生存时间案例详解 2023-06-19
- PHP实现页面静态化深入讲解 2023-05-19
- Laravel框架实现抢红包功能示例 2023-03-12
- Thinkphp5文件包含漏洞解析 2023-07-11
- php5与php7的区别点总结 2023-02-22
- PHP 实现 WebSocket 协议原理与应用详解 2023-08-04
- 在Windows系统上安装Cygwin搭建Swoole测试环境的图文教程 2023-12-08
- 实例分析PHP中PHPMailer发邮件 2022-10-02
