-3

我在服务器端json有这样格式的对象:

{"page_1":{
   "stats":{
      "s1":10, "s2": 20}
    },
   "rules":{
      "rule1":{
       "x": 2, "type":"normal"}
      "rule2":{
       //etc
        }
     }
  },
 "page_2":{
   //etc
  }
}

例如,我如何访问不同的元素foreach,因为我需要将它们保存到数据库中。

更新:我试过了,但徒劳无功:

foreach ($data as $key => $value) {
    echo $key."\n";
    foreach ($value as $k => $v) {
        echo $k." -- ".$v."\n";
    }

}

4

2 回答 2

1

尝试

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
$myarr = json_decode($json,true);
foreach($myarr as $key=>$val){
    echo $key, '=>' ,$val , "\n";
}

您在这里使用普通的 PHP 数组。

您的代码已修改(未测试)

foreach ($data as $key => $value) {
    echo $key."\n";
    echo "heeeeeeeeeeeeeeeeeere: ", $key['stats']['s1'] , "\n";
    foreach ($value as $k => $v) {
        echo $k," -- ",$v,"\n";
    }
}
于 2013-08-03T04:42:04.603 回答
-1

使用json_decode($str, true)将字符串转换为关联数组。之后,您可以直接访问数据。

另请参阅:PHP:数组

于 2013-08-03T04:44:30.470 回答