如何将键值对字符串快速转换为PHP关联数组?
解决方案
PHP 内置了专门处理这类场景的函数 parse_str(),完全不需要手动循环就能把查询字符串转成关联数组,用法非常简单:
$myString = 'var1=test1&var2=test2'; // 第二个参数指定接收结果的数组 parse_str($myString, $myArray); // 查看结果 print_r($myArray);
执行后会得到你预期的关联数组:
Array ( [var1] => test1 [var2] => test2 )
注意事项
- 必须传入第二个参数来存放结果数组,如果省略这个参数,
parse_str()会把解析出的变量直接注册为全局变量,容易引发变量覆盖的安全问题。 - 函数会自动处理URL编码的内容,比如字符串是
var3=hello%20world,解析后$myArray['var3']的值会是hello world。
内容的提问来源于stack exchange,提问作者delphirules
相关产品推荐
相关产品推荐

