使用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实现查询字符串解析到变量中的方法
基础教程推荐
- PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析 2023-03-17
- php将xml转化对象的实例详解 2022-09-02
- PHP使用PDO抽象层获取查询结果的方法示例 2022-10-15
- laravel-admin解决表单select联动时,编辑默认没选上的问题 2023-02-21
- 解决Laravel使用验证时跳转到首页的问题 2023-06-19
- php中使用array_filter()函数过滤空数组的实现代码 2024-01-14
- php中用foreach来操作数组的代码 2024-01-15
- PHP封装的非对称加密RSA算法示例 2022-10-19
- PHP屏蔽错误的方法总结 2022-09-02
- 详解PHP的7个预定义接口 2023-06-12