需求:要求保持数组$array键值由大到小,并且其中相同键值的键名要从小到大排序
实现代码如下:
<? header("Content-type: text/html; charset=UTF-8"); echo ‘需求:要求保持数组$array键值由大到小,并且其中相同键值的键名要从小到大排序‘; echo ‘<pre />‘; $array = array( ‘5‘ => 100, ‘3‘ => 80, ‘1‘ => 80, ‘4‘ => 60, ‘0‘ => 60, ‘2‘ => 40 ); $kArr=array(); $vArr=array(); $newkArr=array(); foreach($array as $key=>$value){ $kArr[]=$key; $vArr[]=$value; } $kStr=implode(",",$kArr); $repeatArr=array(); foreach($array as $k=>$v){ $arrn[$v][]=$k; } foreach($arrn as $k=>$v){ if(count($v)>1){ //echo $k.‘重复下标为‘; $aa=‘‘; foreach($v as $vv){ $aa .= $vv.‘,‘; } $bb=substr($aa, 0, -1); $bbarr=explode(‘,‘,$bb); sort($bbarr); $bbstr=implode(‘,‘,$bbarr); $repeatArr[$bb] = $bbstr; } } foreach($repeatArr as $key=>$value){ $kStr=str_replace($key,$value,$kStr); } $newkArr=explode(‘,‘,$kStr); echo ‘<hr />‘; $c=array_combine($newkArr,$vArr); print_r($c);
本文出自 “PHPer许琴-专注于PHP技术” 博客,请务必保留此出处http://xuqin.blog.51cto.com/5183168/1888693
要求保持数组$array键值由大到小,并且其中相同键值的键名要从小到大排序
原文:http://xuqin.blog.51cto.com/5183168/1888693