zoukankan      html  css  js  c++  java
  • PHP数组——自定义排序

    usort — 使用用户自定义的比较函数对数组中的值进行排序

    Note: 此函数将为array填充新的键名,将会删除原有键名

    function asc($a,$b){
        return $a>$b?1:-1;
    }
    $b=array('2','6','8','9','1','7');
    usort($b,'asc');
    print_r($b);
    //输出  Array ( [0] => 1 [1] => 2 [2] => 6 [3] => 7 [4] => 8 [5] => 9 )

     判断条件为  return $a>$b?1:-1;   数组值按照从小到大排序 

    function re($a,$b){
        $aa = array(7,5,3,1,2,4,9,8,6,9);
        foreach($aa as $k => $v){
            if($a==$v){
                $ai = $k;
            }
            if($b==$v){
                $bi = $k;
            }
        }
        return ($ai>$bi)?1:-1;
    }
    
    $x=array(
        array('1','2','3','4','5','6'),
        array('2','6','8','9','1','8'),
        array('3','5','4','7','6','8'),
        array('4','5','8','1','9','6'),
        array('5','8','1','2','4','6'),
        );
    foreach($x as &$v){
        usort($v,'re');
    }
    print_r($x);
    Array ( [0] => Array ( [0] => 5 [1] => 3 [2] => 1 [3] => 2 [4] => 4 [5] => 6 )
         [1] => Array ( [0] => 1 [1] => 2 [2] => 8 [3] => 8 [4] => 6 [5] => 9 )
        [2] => Array ( [0] => 7 [1] => 5 [2] => 3 [3] => 4 [4] => 8 [5] => 6 )
        [3] => Array ( [0] => 5 [1] => 1 [2] => 4 [3] => 8 [4] => 6 [5] => 9 )
        [4] => Array ( [0] => 5 [1] => 1 [2] => 2 [3] => 4 [4] => 8 [5] => 6 ) )

    这时候数组按照给定的顺序从左往右排序

  • 相关阅读:
    去掉谷歌浏览器下input框自动填充的背景色
    ajax请求中动态显示问题
    Array对象的方法有
    请求页面的方法
    IE浏览器checkbox的样式问题
    property、classmethod和staticmethod总结
    面向对象和类
    内置函数补充map、reduce和filter等
    python实现控制台的进度条功能
    python常见内置函数
  • 原文地址:https://www.cnblogs.com/1010wjf/p/9333176.html
Copyright © 2011-2022 走看看