如何合并来自 Facebook 和 Twitter 的两种不同数据。并在PHP中按created_time对它们进行排序??
据说我已经从各自的 API 调用中获取了这两个数据。但我似乎不知道如何将它们组合并正确排序。
示例:
FB[1] TW[1]
FB[2] TW[2]
FB[3] TW[3]
如果FB[1]的created_time比TW[1]早得多,则FB[1]领先于TW[1]。 如果FB[2]的created_time晚于TW[2],则FB[2]晚于TW[1]。 如果 FB[3] 的created_time 与 TW[3] 相同,则帖子将先来自 FB,然后来自 TW。
我的脑海中浮现出这个伪代码,我只是不知道如何对其进行排序。
我的项目需要这个。请帮忙。
编辑:我正在使用 CodeIgniter..:)
我不知道你从fb和tw检索哪种数据,但如果两者都是数字索引,并且下一个维度具有created_time字段,则应该是这样的:
function cbSort($a, $b) {
return $a['created_time]>$b['created_time'];
}
$res=array_merge($fb, $tw);
usort($res, 'cbSort');
var_dump($res);
无论如何,在您想要完成的事情中,最好的选择是将帖子标准化为通用自定义类。
合并数组 - 然后排序?
function cmp($a, $b) {
return $a["created_time"] > $b["created_time"];
}
$combined = array_merge ($FB, $TW);
usort($combined , "cmp");