计算多维数组中的数组项

时间:2013-12-21 21:52:27

标签: php json facebook-graph-api multidimensional-array foreach

好的,我现在已经尝试了好几天了,所以请有人帮我解决实际有效的问题吗?我通过地址https://graph.facebook.com/search?q=home&access_token=倾注了你从Facebook API获得的JSON数据......而且我知道有一些事实,即有喜欢(不是每个帖子),但我不能为生活我的实际数量。喜欢的JSON输出进入一个单独的数组,如下所示

"likes": {
    "data": [
        {
            "id": "123456789010",
            "name": "joe bloggs"
        },

依此类推......直到没有更多的喜欢,然后它会进入下一篇文章。我有一个地狱般的时间试图计算每个like-gt;数据数组中有多少个ID。我尝试过以下方法:

foreach ($item->likes->data as $like) {
        $likecount = count($like->id);
        }

但这不起作用,并且将另一个foreach()放在第一个也不起作用,count()和sizeof()函数似乎都没有完成这个技巧而且我&# 39;甚至尝试在内部放置一个for()循环,但仍然无法使其工作。

有人可以告诉我哪里出错了,例如重新创建多维数组并自己尝试foreach()循环,看看我在哪里出错。

提前感谢您的帮助,非常感谢!

1 个答案:

答案 0 :(得分:1)

如果你想要计算一下有多少喜欢,那么你可以这样做:

foreach ($items as $item) {
  $total_likes = count($item->likes->data)

  // do stuff with the total
}

如果您要获取类似ID的列表,请执行以下操作:

foreach (items as $item) {
  $item_like_ids = array();
  foreach ($item->like->data as $like)
    $item_like_ids[] = $like->id;

  // do stuff with the array of ids
}

希望这有帮助。