我要求在我的PHP文件中,我将AllItem作为多维数组而不是字符串接收,这样我就可以使用foreach循环它并进行进一步处理。
$.post("show_items.php",
{ 'AllItem' : JSON.stringify(AllItem)},
function(msg)
{
console.log(AllItem);
控制台输出:
Object {9: Array[2]}
9: Array[2]
0: "1"
1: "4"
length: 2
__proto__: Array[0]
__proto__: Object
alert(msg);
警报输出:
string(22) "{\"9\":[\"1\",\"4\"]}"
});
可以在我之前的问题上检查构建AllItem数组的方法:
Assign index and values to a Multidimensional Array in jquery
我应该如何发布AllItem对象,以便将其作为服务器文件中的数组接收。 我应该在我的php文件中使用json_encode吗?现在我收到它:
$AllItem = $_POST['AllItem'];
echo $AllItem;
答案 0 :(得分:0)
由于你绑定到jquery 1.3.2我改写了我的回答:
保持你的javascript不变,就像你在问题中写的一样。
在你的PHP文件中,你现在收到一个字符串,就像你在警报输出中写的一样。
根据你的字符串看起来的确切方式,你需要对它进行一次或两次json解码,但要使shure将第二个参数设置为true
:
$AllItem = json_decode(json_decode($_POST['AllItem'], true), true);
这将为您提供相关的数组。