php使用parse_str实现查询字符串解析到变量中的方法

  • 2020 年 1 月 19 日
  • 筆記

在利用动态脚本PHP做网站的时候,少不了要把一串字符串解析到变量中,比如一些用GET方式提交参数的网址URL,或一些带有参数"&"了字符串等等。当然PHP也给我们提供了一个强大的函数,可以让我用一行代码的形式完成这么复杂的工作。

PHP中的parse_str()函数

parse_str() 函数把查询字符串解析到变量中。

语法

parse_str(string,array)

解释

string:必需。规定要解析的字符串。

array:可选。规定存储变量的数组的名称。该参数指示变量将被存储到数组中。

注意

注释:如果未设置 array 参数,则由该函数设置的变量将覆盖已存在的同名变量。

注释:php.ini 文件中的 magic_quotes_gpc 设置影响该函数的输出。如果已启用,那么在 parse_str() 解析之前,变量会被 addslashes() 转换。

举例说明

利用用parse_str()函数,把一串字符串解析到变量中去

代码

parse_str('name=Bill&age=60');  echo $name."<br>";  echo $age;

代码运行结果

Bill

60

把parse_str()函数解析的变量,存放到数组中去

代码

parse_str('name=Bill&age=60',$myarray);  print_r($myarray);

代码运行结果

Array ( [name] => Bill [age] => 60 )

利用parse_str()解析一段利用GET方式提交的URL地址

代码

$url = 'http://heibai.org/?name=Bill&age=60';  $valer = str_replace('http://heibai.org/?','',$url);  parse_str($valer);  echo $name."<br>";  echo $age;

代码运行结果

Bill

60

说明:此示例只为说明情况,实现项目中,不得使用此示例。