【问题标题】:PHP advanced JSON code [closed]PHP 高级 JSON 代码 [关闭]
【发布时间】:2014-07-04 20:56:04
【问题描述】:

如何从这个 JSON 代码获取 PHP 的“1837”?谁能帮帮我,我不明白。 :( 因为有超过 1 个“countHint”,我无法得到“1837”的值。

{
   "gd$feedLink":[
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.subscriptions",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/subscriptions?v=2",
         "countHint":68
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.liveevent",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/live/events?v=2",
         "countHint":0
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.favorites",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/favorites?v=2",
         "countHint":795
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.contacts",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/contacts?v=2",
         "countHint":9915
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.inbox",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/inbox?v=2"
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.playlists",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/playlists?v=2"
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.uploads",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/uploads?v=2",
         "countHint":1837
      },
      {
         "rel":"http://gdata.youtube.com/schemas/2007#user.newsubscriptionvideos",
         "href":"http://gdata.youtube.com/feeds/api/users/pewdiepie/newsubscriptionvideos?v=2"
      }
   ]
}

【问题讨论】:

  • 不,不是。但是这样的问题已经回答了几次,而且在发布该问题之前,您似乎甚至没有使用过搜索引擎。我想,这就是投反对票的原因……
  • Stack Overflow 奖励大量研究并展示您在问题中的先前尝试。辅导请求和骂人没那么多。

标签: php json


【解决方案1】:

您可以将 JSON 数据解码为 PHP 数组或对象,然后使用普通的 PHP 数组函数按特定值进行过滤。 (后者在 SO 上经常被解释)。

$json = '{ "gd$feedLink":[ … ] }';
$phpArray = json_decode( $json, true );

【讨论】:

    【解决方案2】:

    就像 feela 描述的那样,这里使用 json_decode 是完整的代码:D 享受

    $json = '{
        "gd$feedLink": [
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.subscriptions",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/subscriptions?v=2",
                "countHint": 68
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.liveevent",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/live/events?v=2",
                "countHint": 0
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.favorites",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/favorites?v=2",
                "countHint": 795
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.contacts",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/contacts?v=2",
                "countHint": 9915
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.inbox",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/inbox?v=2"
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.playlists",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/playlists?v=2"
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.uploads",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/uploads?v=2",
                "countHint": 1837
            },
            {
                "rel": "http://gdata.youtube.com/schemas/2007#user.newsubscriptionvideos",
                "href": "http://gdata.youtube.com/feeds/api/users/pewdiepie/newsubscriptionvideos?v=2"
            }
        ]
    }';
    
    $decoded = json_decode($json,true);
    
    foreach ($decoded['gd$feedLink'] as $item  ){
        if( isset($item['countHint']) && $item['countHint']=='1837'){
            echo $item['rel']."<br/>";
            echo $item['href']."<br/>"; 
            echo $item['countHint']."<br/>";
    
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-29
      • 1970-01-01
      • 1970-01-01
      • 2010-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多