用php获取复杂的JSON对象

用php获取复杂的JSON对象,php,mysql,json,server-side,Php,Mysql,Json,Server Side,我的服务器端有以下格式的json对象: {"page_1":{ "stats":{ "s1":10, "s2": 20} }, "rules":{ "rule1":{ "x": 2, "type":"normal"} "rule2":{ //etc } } }, "page_2":{ //etc } } 例如,我如何使用foreach访问不同的元素,因为我需要将它们保存

我的服务器端有以下格式的json对象:

{"page_1":{
   "stats":{
      "s1":10, "s2": 20}
    },
   "rules":{
      "rule1":{
       "x": 2, "type":"normal"}
      "rule2":{
       //etc
        }
     }
  },
 "page_2":{
   //etc
  }
}
例如,我如何使用foreach访问不同的元素,因为我需要将它们保存到db中

更新:我试过了,但没有成功:

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

$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";
    }
}
用于将字符串转换为关联数组。之后,您可以直接访问数据


另请参见:

您是否将其从json字符串转换而来?我已经将其作为字符串了您可以使用json_decode$json_字符串,true;是的,我已经使用了decode,我如何使用该数组获得访问权限?@HoussemBdr请显示整个代码,从您肯定有一个字符串的点到它意外行为的点。