zoukankan      html  css  js  c++  java
  • php多维数组的指定单个字段排序

    多维数组如何根据指定键值?比如现在有数组结构如下:

    $data = array(
    0 => array('name' => '1','avgScore'=>90,'subject' => 'math'),
    1 => array('name' => '2','avgScore'=>60,'subject' => 'math'),
    2 => array('name' => '3','avgScore'=>88,'subject' => 'math' ),
    );

     如何把它变成:

    $data = array(
    0 => array('name' => '1','avgScore'=>90,'subject' => 'math'),
    1 => array('name' => '3','avgScore'=>88,'subject' => 'math'),
    2 => array('name' => '2','avgScore'=>60,'subject' => 'math'),
    );

    1、array_multisort()

     可使用 array_multisort()函数排序,

    function mySort($arr = array(),$sort_by){
    foreach($arr as $k => $v){
    $avgScore[$k] = $v[$sort_by];
    }
    array_multisort($avgScore, SORT_DESC, $arr);
    return $arr;
    }

    echo "<pre>";
    print_r(mySort($data),'avgScore');

    输出:

    $data = array(
    0 => array('name' => '1','avgScore'=>90,'subject' => 'math'),
    1 => array('name' => '3','avgScore'=>88,'subject' => 'math'),
    2 => array('name' => '2','avgScore'=>60,'subject' => 'math'),
    );
    记录点滴,迭代精进,追求新生。Email: 942298768@qq.com
  • 相关阅读:
    手机截屏雷阵雨
    2010年5月20日 用户的数据永远不会靠谱
    2010年5月17日 OCD
    2010年8月9日 流水账
    2010年5月19日 借鉴
    立表为据
    2010年6月2日 回来
    不重视小C打屁屁
    2010年8月16日 知行合一
    2010年5月18日 小细节大隐患
  • 原文地址:https://www.cnblogs.com/chaoyong/p/8920005.html
Copyright © 2011-2022 走看看