PHP二维数组排序

試著忘記壹切 提交于 2021-02-10 08:14:40

一、问题

 从 Redis 中取出的 hvals 值排序是随机的(参看:https://github.com/phpredis/phpredis#hvals The order is random and corresponds to redis' own internal representation of the set structure.),导致前端显示与从数据库取出的值不一致,所以把hvals的值进行降序。

二、方法

  主要用到PHP的array_multisort — 对多个数组或多维数组进行排序

$unread_notify = $this->redis->hvals('ushark:unread:notify:3');
foreach ($unread_notify as &$val) {
    $val = json_decode($val, true);
}
$time = array_column($unread_notify, 'newest_time');
array_multisort($time, SORT_DESC, $unread_notify);    !!! 关键 !!!
print_r($unread_notify);

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!