test
工作中碰到一个问题,把三个日志表里的数据取出,进行排序。
第一步很简单,直接用mysql进行排序。
那么问题来了,当把三个表的数据取出来之后,合并数组在一起之后。时间会是无序的。因为mysql只是对三张表进行了排序。
解决办法
用PHP的usort这个函数,可以自定义排序
下面上代码
usort($order, function ($a, $b) {
if ($a['pay_time'] == $b['pay_time']) {
return 0;
}
return ($a['pay_time'] < $b['pay_time']) ? 1 : -1;
});
第一个参数是要排序的数组,第二个参数是回调函数。在回调函数里面,可以对时间进行比较,这个时间你根据自己的需要进行正序或者是倒序的排序了。