使用内置函数解决PHP多维数组排序问题

学习PHP时,你可能会遇到PHP多维数组排序问题,这里将介绍PHP多维数组排序问题的解决方法,在这里拿出来和大家分享一下,希望对大家有帮助。

#T#根据数组的键进行比较大小,排序,就不用说了,php有很多,很方便的内置函数,krsort(),ksort()等如果是根据数组的值进行比较大小就麻烦一些。如果值没有重复的情况,可以先用array_flip()交换键、值;然后krsort(),然后在array_flip()交换回来,就可以比较大小。有值重复的情况,就要用到一些排序算法了,不过php有很方便的回调函数uasort()会保持原来的索引、usort()会重建索引。PHP多维数组排序代码:

 
 
  1. php
  2. functioncmp($a,$b){
  3. if($a[”nums”]==$b[”nums”]){
  4. return0;
  5. }
  6. return($a[”nums”]<$b[”nums”])?-1:1;
  7. }
  8. $arr=Array(
  9. 0=>Array(
  10. “username”=>owen,
  11. “nums”=>2,
  12. ),
  13. 1=>Array(
  14. “username”=>d5s,
  15. “nums”=>5,
  16. ),
  17. 2=>Array(
  18. “username”=>pt,
  19. “nums”=>3,
  20. ),
  21. );
  22. uasort($arr,“cmp”);
  23. echo‘’;
  24. print_r($arr);
  25. echo‘ pre>’;
  26. ?>
  27. Array
  28. (
  29. [0]=>Array
  30. (
  31. [username]=>owen
  32. [nums]=>2
  33. )
  34. [2]=>Array
  35. (
  36. [username]=>pt
  37. [nums]=>3
  38. )
  39. [1]=>Array
  40. (
  41. [username]=>d5s
  42. [nums]=>5
  43. )
  44. )

当前名称:使用内置函数解决PHP多维数组排序问题
网址分享:http://www.csdahua.cn/qtweb/news22/353872.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网