二维,多维数组排序array_multisort()函数的使用

对于数组的排序,很很多方法;随便百度了一下

  • sort() - 以升序对数组排序
  • rsort() - 以降序对数组排序
  • asort() - 根据值,以升序对关联数组进行排序
  • ksort() - 根据键,以升序对关联数组进行排序
  • arsort() - 根据值,以降序对关联数组进行排序
  • krsort() - 根据键,以降序对关联数组进行排序

但是这些都是对一维数组的排序,遇到二维,甚至多维的,好像百度出来的结果不容易找到,

下面就来说说array_multisort()这个函数,这个函数能够根据多维数组中指定键值来排序,先上代码

$time_left = array();
foreach($arr1 as $arr){
$time_left[] = $arr['time_left'];
}
array_multisort($time_left,SORT_DESC,SORT_NUMERIC,$arr1);


代码很简单,首先先做了一个降维的处理,示例中是一个二维数组,根据键名time_left中的键值大小进行降序排序,
第一个参数是降维后的需要排序的数组,第二个参数是规定排列顺序(可选值:SORT_ASC - 默认。按升序排列 (A-Z);SORT_DESC - 按降序排列 (Z-A)),第三个是规定排序类型,第四个是原多维数组;
具体可以参考http://www.w3school.com.cn/php/func_array_multisort.asp文档
好像我也解释的不是很清楚。。。
但这些都是我的个人理解,有错误的地方,还请大神斧正;

本文属于个人原创,欢迎转载,转载请附链接:

http://www.cnblogs.com/x-x-j/p/7435372.html

posted @ 2017-08-26 15:04  寞小陌  阅读(685)  评论(0编辑  收藏  举报