Json在php基础知识中解码

问题描述:

I'm trying to learn json in php. Here's my json result from a ElasticSearch query.

{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 1,
    "max_score" : null,
    "hits" : [ {
      "_index" : "xenforo",
      "_type" : "post",
      "_id" : "1816069",
      "_score" : null,
      "sort" : [ 1365037907 ]
    } ]
  }
}

I assume that my php code will look something like this:

$myData = json_decode($result);

foreach($myData->hits as $var) {
   $post_id[] = $var->_id;
}

Been looking for the answer for hours, I sure do appreciate any help. Thank you.

Edit: Here is the answer:

foreach($myData->hits->hits as $var) {
   $post_id[] = $var->_id;
}

You're one ->hits short if you look at your JSON structure...

{
    "hits" : {
        "hits" : [ {
            "_id" : "1816069",

$myData = json_decode($result);

foreach($myData->hits->hits as $hit) {
    $post_id[] = $hit->_id;
}