php二维数组按某个键值排序的实例讲解

今天小编就为大家分享一篇关于php二维数组按某个键值排序的实例讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧。

排序前

  1. Array
  2. (
  3. [0] => Array
  4. (
  5. [name] => 龙
  6. [age] => 2017-02-28
  7. )
  8. [1] => Array
  9. (
  10. [name] => 龙2
  11. [age] => 2017-03-14
  12. )
  13. [2] => Array
  14. (
  15. [name] => 小3
  16. [age] => 2017-05-09
  17. )
  18. [3] => Array
  19. (
  20. [name] => 龙4
  21. [age] => 2017-02-03
  22. )
  23. [4] => Array
  24. (
  25. [name] => 龙5
  26. [age] => 2017-03-23
  27. )
  28. [5] => Array
  29. (
  30. [name] => 龙6
  31. [age] => 21
  32. )
  33. )
  34. array_multisort(array_column($arr,'age'),SORT_DESC,$arr);
  35. print_r($arr);

排序后

  1. Array
  2. (
  3. [0] => Array
  4. (
  5. [name] => 龙6
  6. [age] => 21
  7. )
  8. [1] => Array
  9. (
  10. [name] => 小3
  11. [age] => 2017-05-09
  12. )
  13. [2] => Array
  14. (
  15. [name] => 龙5
  16. [age] => 2017-03-23
  17. )
  18. [3] => Array
  19. (
  20. [name] => 龙2
  21. [age] => 2017-03-14
  22. )
  23. [4] => Array
  24. (
  25. [name] => 龙
  26. [age] => 2017-02-28
  27. )
  28. [5] => Array
  29. (
  30. [name] => 龙4
  31. [age] => 2017-02-03
  32. )
  33. )

其中 array_column(数组,数组中的某个键值) 从多维数组中取出某个键值的一列 返回一个一维数组;

array_multisort(数组(一维数组),排序方式(SOTR_ASC,SOTR_DESC),其他数组(可以是二维的))。