用过php的人一般都知道parse_str是把查询字符串解析为变量的函数,如果给了第二个参数,就会把解析结果放到第二个变量中。
最近在使用parse_str的时候遇到一个大坑,就是在解析的时候把点分隔的键名转换为了下划线。
举例:

a=1&b=2 能正常解析为数组
array (
‘a’ => ‘1’,
‘b’ => ‘2’,
)
如果是 a.b=1&c.d=2则会解析为
array (
‘a_b’ => ‘1’,
‘c_d’ => ‘2’,
)