使用JSON将多维数组从PHP放入Javascript
我的php脚本发回一个JSON编码的字符串 我只是不知道如何实际使用数组,现在它很好地位于Javascript中 最终目标是通过JavaScript中的多维数组循环提取值(价格) 我已经设法让JavaScript接收编码字符串(通过将其打印到屏幕上进行测试),但我不确定如何实际使用该数组,或者如何像在PHP中一样循环使用该数组 我基本上需要做与此PHP代码等效的JavaScript使用JSON将多维数组从PHP放入Javascript,php,javascript,jquery,json,Php,Javascript,Jquery,Json,我的php脚本发回一个JSON编码的字符串 我只是不知道如何实际使用数组,现在它很好地位于Javascript中 最终目标是通过JavaScript中的多维数组循环提取值(价格) 我已经设法让JavaScript接收编码字符串(通过将其打印到屏幕上进行测试),但我不确定如何实际使用该数组,或者如何像在PHP中一样循环使用该数组 我基本上需要做与此PHP代码等效的JavaScript foreach ($array as $item => $value){ foreach ($v
foreach ($array as $item => $value){
foreach ($value as $item2 => $value2){
//peform action on $value2;
}
}
谢谢你的帮助
Oz使用jquery,您可以对json对象进行如下迭代:
$.each(obj, function(key, value) {
if ($.type(value) == "object") {
$.each(value, function(key, value) {
// value would be $value2 here
})
}
});
另外,如果您从PHP获得一个json编码的字符串,您可以使用来获取json对象
var obj = jQuery.parseJSON(stringFromPhp);
您还可以直接使用$.getJSON()()在回调中自动获取json对象
编辑:缺少括号。假设您已从PHP调用变量
arrayFromPhp
,您可以使用一个简单的嵌套循环:
for(var i = 0, l = arrayFromPhp.length; i < l; i++) {
for(var j = 0, l2 = arrayFromPhp[i].length; j < l2; j++) {
var value = arrayFromPhp[i][j];
//Do stuff with value
}
}
for(var i=0,l=arrayFromPhp.length;i
+1我猜他不知道那个数组[i][j];是可能的。这对我也有用:),但我更喜欢上面的答案,只是因为它更像我的母语foreach的结构。不过,感谢您抽出时间,这让我对jQuery方法有了宝贵的见解。:)没问题:)这个版本对我来说更干净、更健壮,但这是你的选择;)