学习php时,你可能会遇到php多维数组排序问题,这里将介绍php多维数组排序问题的解决方法,在这里拿出来和大家分享一下,希望对大家有帮助。
根据数组的键进行比较大小,排序,就不用说了,php有很多,很方便的内置函数,krsort(),ksort()等如果是根据数组的值进行比较大小就麻烦一些。如果值没有重复的情况,可以先用array_flip()交换键、值;然后krsort(),然后在array_flip()交换回来,就可以比较大小。有值重复的情况,就要用到一些排序算法了,不过php有很方便的回调函数uasort()会保持原来的索引、usort()会重建索引。php多维数组排序代码:php functioncmp($a,$b){ if($a[”nums”]==$b[”nums”]){ return0; } return($a[”nums”]$b[”nums”])?-1:1; } $arr=array( 0=>array( “username”=>owen, “nums”=>2, ), 1=>array( “username”=>d5s, “nums”=>5, ), 2=>array( “username”=>pt, “nums”=>3, ), ); uasort($arr,“cmp”); echo‘prestyleprestyle=”text-align:left”>’; print_r($arr); echo‘pre>’; ?> array ( [0]=>array ( [username]=>owen [nums]=>2 ) [2]=>array ( [username]=>pt [nums]=>3 ) [1]=>array ( [username]=>d5s [nums]=>5 ) )
http://www.bkjia.com/phpjc/446522.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/446522.htmltecharticle学习php时,你可能会遇到php多维数组排序问题,这里将介绍php多维数组排序问题的解决方法,在这里拿出来和大家分享一下,希望对大家有...