来自URL的字段

时间:2010-09-09 22:31:13

标签: php regex

我正在处理一个由于某种原因无法读取正常的$ _GET和$ _POST并且只是将整个事物作为字符串读取的漏洞。这是它读取的字符串,我将其作为输出。

?field1=value1&field2=value2&field3=value3

我正在编写一个与此输出一起使用的函数,将其分解为单独的field1,field2,field3值。问题是并非所有字段都存在,并且有可能有人可能添加不应存在的字段。例如,我可能会

?field1=value1&field3=value3 (no field2)
?field1=value1&field4=value4 (I don't even have field4)

这可以用正则表达式完成吗?还是有更好的方法?

1 个答案:

答案 0 :(得分:4)

不要使用regexp,而是查看本机PHP parse_str()函数

检查您的网络服务器是否以任何方式重写请求

修改

检查php.ini文件中arg_separator.input的值。我希望这个被注释掉,或者设置为包含&作为参数分隔符