dongzouxigu12345 2014-10-24 10:50
浏览 8
已采纳

MultiDim数组排序查询

I use this to sort a multidimensional array

    usort($items, function($a, $b) {
        return $a['item'] - $b['item'];
    });

BEFORE SORT

Array
(
[0] => Array
    (
        [uuid] => 3199d45c-a5c2-474c-8768-06e18fdf6ace
        [status] => active
        [item] => Spar
    )

[1] => Array
    (
        [uuid] => 4001
        [status] => active
        [item] => Starbucks
    )

[2] => Array
    (
        [uuid] => 4002
        [status] => active
        [item] => Burger King
    )

[3] => Array
    (
        [uuid] => 4003
        [status] => active
        [item] => Steers
    )

[4] => Array
    (
        [uuid] => 4004
        [status] => active
        [item] => Hungry Lion
    )

[5] => Array
    (
        [uuid] => 658bee38-04c2-4f27-812f-dd46c3652dcb
        [status] => active
        [item] => Deslies
    )

[6] => Array
    (
        [uuid] => a5c2b1dc-584d-4175-9d21-e7a910606835
        [status] => active
        [item] => Nandos
    )

[7] => Array
    (
        [uuid] => e1a14e51-0cfc-47c6-8ae8-d408fd43571e
        [status] => active
        [item] => OK
    )

)

AFTER SORT

Array
(
[0] => Array
    (
        [uuid] => 658bee38-04c2-4f27-812f-dd46c3652dcb
        [status] => active
        [item] => Deslies
    )

[1] => Array
    (
        [uuid] => a5c2b1dc-584d-4175-9d21-e7a910606835
        [status] => active
        [item] => Nandos
    )

[2] => Array
    (
        [uuid] => e1a14e51-0cfc-47c6-8ae8-d408fd43571e
        [status] => active
        [item] => OK
    )

[3] => Array
    (
        [uuid] => 4004
        [status] => active
        [item] => Hungry Lion
    )

[4] => Array
    (
        [uuid] => 4003
        [status] => active
        [item] => Steers
    )

[5] => Array
    (
        [uuid] => 4001
        [status] => active
        [item] => Starbucks
    )

[6] => Array
    (
        [uuid] => 4002
        [status] => active
        [item] => Burger King
    )

[7] => Array
    (
        [uuid] => 3199d45c-a5c2-474c-8768-06e18fdf6ace
        [status] => active
        [item] => Spar
    )

)

Why Does Burger King not sit first after sort?

  • 写回答

2条回答 默认 最新

  • drrw8672 2014-10-24 11:04
    关注

    Compare them and then return the result based on the 'item' you have ..

    For example :

    function compare($a, $b)
    {
        return strcmp($a["item"], $b["item"]);
    }
    
    usort($items, "compare");
    
    while (list($key, $value) = each($items)) {
        echo "\$items[$key]: " . $value["item"] . "
    ";
    }
    

    There are examples of this here : READ THE MANUAL

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)