PHP数组排序

 
  1. /**
  2.  * 倒序数组
  3.  * @param aInput array 要排序的数组
  4.  * @param $by string 排序对象, key为按数组下标排序, value为按值排序
  5.  */
  6. function aryReverts($aInput$by = 'key') {
  7.     if(!is_array($aInput)) {
  8.         return false;
  9.     }
  10.     $res = array();
  11.     $n = count($aInput);
  12.     for($i=0; $i<$n$i++) {
  13.         $tmMax = getMax($aInput$by);
  14.         print_r($tmMax);
  15.         list($k$v) = each($tmMax);
  16.         $res[$k] = $v;
  17.     }
  18.     return $res;
  19. }

  20. /**
  21.  * @param aInput array 要冒沟的数组
  22.  * @param $by string 排序对象, key为按数组下标排序, value为按值排序
  23.  */
  24. function getMax(&$aInput$by) {
  25.     $max = null;
  26.     $maxKey = null;
  27.     if($by == 'key')  
  28.         $tar = 'k';
  29.     else 
  30.         $tar = 'v';
  31.     foreach($aInput as $k => $v) {
  32.         if($$tar > $max ) {
  33.             $max = $$tar;
  34.             $maxKey = $k;
  35.         }
  36.     }
  37.     $maxValue = $aInput[$maxKey];
  38.     unset($aInput[$maxKey]);
  39.     return array($maxKey=> $maxValue);
  40. }

  41. $list = array('apple'=>300, 'orange'=>150, 'banana'=>100,  'mango'=>330);
  42. echo '<xmp>';
  43. print_r(aryReverts($list'value'));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值