首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何对jQuery序列化的表单进行PHP反序列化?

如何对jQuery序列化的表单进行PHP反序列化?
EN

Stack Overflow用户
提问于 2009-11-25 04:08:19
回答 12查看 222.4K关注 0票数 170

使用$('#form').serialize(),我可以将其发送到一个PHP页面。现在我如何在PHP中对其进行反序列化?它是用jQuery序列化的。

EN

回答 12

Stack Overflow用户

回答已采纳

发布于 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"

票数 64
EN

Stack Overflow用户

发布于 2010-09-29 05:35:13

假设您的服务器正在接收如下所示的字符串(如果您使用的是jQuery serialize(),则应该是这样的):

代码语言:javascript
复制
"param1=someVal&param2=someOtherVal"

像这样的...something可能就是您所需要的:

代码语言:javascript
复制
$params = array();
parse_str($_GET, $params);

然后,$params应该是一个按照您期望的方式建模的数组。注意:这也适用于HTML数组。

有关更多信息,请参阅以下内容:http://www.php.net/manual/en/function.parse-str.php

票数 428
EN

Stack Overflow用户

发布于 2012-07-01 16:26:41

// jQuery帖子

代码语言:javascript
复制
var arraydata = $('.selector').serialize();

// jquery.post序列化var - TO - PHP数组格式

代码语言:javascript
复制
parse_str($_POST[arraydata], $searcharray);
print_r($searcharray); // Only for print array

//您会得到任何相同的结果

代码语言:javascript
复制
 Array (
 [A] => 1
 [B] => 2
 [C] => 3
 [D] => 4
 [E] => 5
 [F] => 6
 [G] => 7
 [H] => 8
 )
票数 56
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1792603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档