parse_str解析serialize生成的带多选表单的字符串出错
程序员文章站
2024-01-25 15:52:16
...
parse_str解析serialize生成的字符串,因为表单里有多选表单,解析的时候多选表单的值变成二维数组,解析后就变成array这个字符,怎么办呢?
图片是parse_str解析后的数组
报的错是:Array to string conversion
回复内容:
parse_str解析serialize生成的字符串,因为表单里有多选表单,解析的时候多选表单的值变成二维数组,解析后就变成array这个字符,怎么办呢?
图片是parse_str解析后的数组
报的错是:Array to string conversion
这是因为复选的query string格式不一致导致的,RFC 标准里并没有规定 query string 具体应该用什么格式,因此各种语言对于一键多值都有自己的格式,比如jQuery(或者说JS系列)是这个样子:rzqd=网络搜索&rzqd=自己
或者rzqd=网络搜索,自己
,但是PHP的格式是rzqd[]=网络搜索&rzqd[]=自己
。我觉得你要么直接就表单,要么就自己写一个函数去解析吧,反正也不复杂。