dregvw1801 2013-04-04 14:56
浏览 41
已采纳

通过两个变量对多维数组进行排序 - PHP

I need to sort my array php by a key value. my array:

Array
(
    [1430039342393636453] => Array
        (
            [0] => Array
                (
                    [thrid] => 1430039342393636453
                    [uid] => 19748
                    [flag] => 1
                    [timestamp] => 1363791789
                    [date] => Mar 20
                    [content_preview] => 
                    [content] => 

                )

        )
[1430750471744336569] => Array
        (
            [0] => Array
                (
                    [thrid] => 1430750471744336569
                    [uid] => 19870
                    [flag] => 1
                    [timestamp] => 1364469959
                    [date] => Mar 28
                    [content_preview] =>
                    [content] =>
                )

            [1] => Array
                (
                    [thrid] => 1430750471744336569
                    [uid] => 19874
                    [flag] => 1
                    [timestamp] => 1364472417
                    [date] => Mar 28
                    [content_preview] => 
                    [content] => 
                )
)

I need to sort by timestamp the main array and also the childs arrays. Any suggesitons?

  • 写回答

2条回答 默认 最新

  • douliao8318 2013-04-04 15:10
    关注

    Try something like:

    private function sort($sort) {
    
        foreach($sort as &$arr) { //use a reference because usort uses references to manipulate your array.
                                //if you don't pass by reference you'll never see the sort
            usort($arr, function($a, $b) { return $a['timestamp'] - $b['timestamp'];
        }
    
        usort($sort, function($a, $b) { return key($a) - key($b); }
    
        return $sort;
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制