Array
(
    [0] => Array
        (
            [rework_rate] => 
            [username] => 张三
        )    [1] => Array
        (
            [rework_rate] => 0.7
            [username] => 李四
        )    [2] => Array
        (
            [rework_rate] => 0.1
            [username] => srj
        )    [3] => Array
        (
            [rework_rate] => 0.2
            [username] => zjl
        )    [4] => Array
        (
            [rework_rate] => 0.11
            [username] => qjw
        )    [5] => Array
        (
            [rework_rate] => 0.44
            [username] => zhj
        ))根据rework_rate 降序排列

解决方案 »

  1.   


    <?php
    $arr = array(
      '0' => array(
    'rework_rate' => '' ,
    'username' => '张三',
      ),
      '1' => array(
     'rework_rate' => 0.7,
     'username' => '李四',
      ),  '2' => array(
     'rework_rate' => 0.1,
    'username' => 'srj',
      ),  '3' => array(
     'rework_rate' => 0.2,
     'username' => 'zjl',
      ),  '4' => array(
    'rework_rate' => 0.11,
    'username' => 'qjw',
      ),  '5' => array(
     'rework_rate' => 0.44,
    'username' => 'zhj'
      ));foreach($arr as $v){
    $k[] = $v['rework_rate'];
    }
    array_multisort($k,SORT_DESC,$arr);
    print_r($arr);
    ?>结果:
    Array
    (
        [0] => Array
            (
                [rework_rate] => 0.7
                [username] => 李四
            )
     
        [1] => Array
            (
                [rework_rate] => 0.44
                [username] => zhj
            )
     
        [2] => Array
            (
                [rework_rate] => 0.2
                [username] => zjl
            )
     
        [3] => Array
            (
                [rework_rate] => 0.11
                [username] => qjw
            )
     
        [4] => Array
            (
                [rework_rate] => 0.1
                [username] => srj
            )
     
        [5] => Array
            (
                [rework_rate] => 
                [username] => 张三
            )
     
    )
      

  2.   

    function array_sort($arr, $keys, $type) {
    $keysvalue = array ();
    $i = 0;
    foreach ( $arr as $key => $val ) {
    $val [$keys] = str_replace ( "-", "", $val [$keys] );
    $val [$keys] = str_replace ( " ", "", $val [$keys] );
    $val [$keys] = str_replace ( ":", "", $val [$keys] );
    $keysvalue [] = $val [$keys];

    }
    asort ( $keysvalue ); //key值排序 
    reset ( $keysvalue ); //指针重新指向数组第一个 
    foreach ( $keysvalue as $key => $vals ) {
    $keysort [] = $key;
    }
    $new_array = array ();
    if ($type != "asc") {
    for($ii = count ( $keysort ) - 1; $ii >= 0; $ii --) {
    $new_array [] = $arr [$keysort [$ii]];
    }
    } else {
    for($ii = 0; $ii < count ( $keysort ); $ii ++) {
    $new_array [] = $arr [$keysort [$ii]];
    }
    }
    return $new_array;
    }