使用$('#form').serialize()
,我可以将其发送到一个PHP页面。现在我如何在PHP中对其进行反序列化?它是用jQuery序列化的。
发布于 2009-11-25 04:13:23
您不必从jquery serialize
方法反序列化PHP中的任何内容。如果序列化数据,如果使用GET方法ajax请求,则应将数据作为查询参数发送到PHP;如果使用post ajax请求,则应将数据作为POST vars发送。因此,在PHP中,您将根据请求类型访问诸如$_POST["varname"]
或$_GET["varname"]
之类的值。
serialize
方法只接受表单元素,并将它们放入字符串形式。"varname=val&var2=val2"
发布于 2010-09-29 05:35:13
假设您的服务器正在接收如下所示的字符串(如果您使用的是jQuery serialize()
,则应该是这样的):
"param1=someVal¶m2=someOtherVal"
像这样的...something可能就是您所需要的:
$params = array();
parse_str($_GET, $params);
然后,$params
应该是一个按照您期望的方式建模的数组。注意:这也适用于HTML数组。
有关更多信息,请参阅以下内容:http://www.php.net/manual/en/function.parse-str.php
发布于 2012-07-01 16:26:41
// jQuery帖子
var arraydata = $('.selector').serialize();
// jquery.post序列化var - TO - PHP数组格式
parse_str($_POST[arraydata], $searcharray);
print_r($searcharray); // Only for print array
//您会得到任何相同的结果
Array (
[A] => 1
[B] => 2
[C] => 3
[D] => 4
[E] => 5
[F] => 6
[G] => 7
[H] => 8
)
https://stackoverflow.com/questions/1792603
复制相似问题