使用JSON从PHP中将多维数组放入Javascript中

时间:2011-02-05 19:40:52

标签: php javascript jquery json

我的php脚本发回一个JSON编码的字符串。

我只是迷失了如何实际使用数组现在它在Javascript中很好用吗?

最终目标是在JavaScript中循环遍历多维数组以提取值(价格)......

我设法让JavaScript接收编码的字符串(通过将其打印到屏幕上进行测试),但我不确定如何实际使用该数组,或者我将如何在PHP中循环它..

我基本上需要做相当于这个PHP代码的JavaScript

 foreach ($array as $item => $value){

    foreach ($value as $item2 => $value2){

      //peform action on $value2;
    }
}

感谢您的帮助。

盎司

2 个答案:

答案 0 :(得分:2)

使用jquery,你可以像这样迭代一个json对象:

$.each(obj, function(key, value) {
    if ($.type(value) == "object") {
       $.each(value, function(key, value) {
           // value would be $value2 here
       })
    }
});

另外,如果从PHP获得json编码的字符串,则可以使用http://api.jquery.com/jQuery.parseJSON/来获取json对象

var obj = jQuery.parseJSON(stringFromPhp);

您也可以直接使用$ .getJSON()(http://api.jquery.com/jQuery.getJSON/)自动获取回调中的json对象。

编辑:缺少一个括号。

答案 1 :(得分:2)

假设您已调用变量arrayFromPhp,则可以使用简单的嵌套for循环:

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
  }
}