php只显示数组中的重复值(facebook api)

时间:2013-06-29 17:43:29

标签: php json facebook facebook-graph-api

我想从脸谱图数据中删除重复的帖子

我的网页数据如:

{
   "data": [
      {
         "link": "http://example.com/188",
         "id": "427801497327797_428375477270399",
         "created_time": "2013-06-29T14:16:26+0000"
      },
      {
         "link": "http://example.com/188",
         "id": "427801497327797_428375187270428",
         "created_time": "2013-06-29T14:15:27+0000"
      },
      {
         "link": "http://example.com/188",
         "id": "427801497327797_428363873938226",
         "created_time": "2013-06-29T13:33:17+0000"
      },
      {
         "link": "http://example.com/196",
         "id": "427801497327797_428363597271587",
         "created_time": "2013-06-29T13:32:07+0000"
      }
   ],
   "paging": {
      "previous": "",
      "next": ""
   }
}

您可以看到重复的链接example.com/188。 我想得到所有重复链接的ID。 我正在使用facebook-page-poster

1 个答案:

答案 0 :(得分:0)

如果您关注的是删除重复的链接数据,那么您可以这样做

<?php
$duplicate_ids = array();
$all_links = array();
$facebook_data = array(
    'data' => array(
        array(
            'link' => 'http=>//site.com/188',
            'id' => '427801497327797_428375477270399',
            'created_time' => '2013-06-29T14=>16=>26+0000'
        ), array(
            'link' => 'http=>//site.com/188',
            'id' => '427801497327797_428375187270428',
            'created_time' => '2013-06-29T14=>15=>27+0000'
        ), array(
            'link' => 'http=>//site.com/188',
            'id' => '427801497327797_428363873938226',
            'created_time' => '2013-06-29T13=>33=>17+0000'
        ), array(
            'link' => 'http=>//site.com/196',
            'id' => '427801497327797_428363597271587',
            'created_time' => '2013-06-29T13=>32=>07+0000'
        )
    ),
    'paging' => array(
        'previous' => '',
        'next' => ''
    )
);
$data_count = count($facebook_data['data']);
for ($i = 0; $i < $data_count; $i++) {
    if (in_array($facebook_data['data'][$i]['link'], $all_links)) {
        $duplicate_ids[] = $facebook_data['data'][$i]['id'];
        unset($facebook_data['data'][$i]);
    } else {
        $all_links[] = $facebook_data['data'][$i]['link'];
    }
}

echo '<pre>'; print_r($duplicate_ids); '</pre>';
相关问题