php二维数组按某个键值排序的实例讲解
排序前
Array ( [0] => Array ( [name] => 龙 [age] => 2017-02-28 ) [1] => Array ( [name] => 龙2 [age] => 2017-03-14 ) [2] => Array ( [name] => 小3 [age] => 2017-05-09 ) [3] => Array ( [name] => 龙4 [age] => 2017-02-03 ) [4] => Array ( [name] => 龙5 [age] => 2017-03-23 ) [5] => Array ( [name] => 龙6 [age] => 21 ) ) array_multisort(array_column($arr,'age'),SORT_DESC,$arr); print_r($arr);
排序后
Array ( [0] => Array ( [name] => 龙6 [age] => 21 ) [1] => Array ( [name] => 小3 [age] => 2017-05-09 ) [2] => Array ( [name] => 龙5 [age] => 2017-03-23 ) [3] => Array ( [name] => 龙2 [age] => 2017-03-14 ) [4] => Array ( [name] => 龙 [age] => 2017-02-28 ) [5] => Array ( [name] => 龙4 [age] => 2017-02-03 ) )
其中 array_column(数组,数组中的某个键值) 从多维数组中取出某个键值的一列 返回一个一维数组;
array_multisort(数组(一维数组),排序方式(SOTR_ASC,SOTR_DESC),其他数组(可以是二维的))
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
相关推荐
-
php二维数组用键名分组相加实例函数
本文介绍一篇关于php 二维数组以某一键名进行分组相加的实例程序,如果是从数据库里取数据的时候大可以SELECT SUM(t_value),t_id FROM t_table GROUP BY t_id,但是如果是在php程序中处理类似的问题就稍微麻烦点了,这里给个函数就是处理类似的问题 复制代码 代码如下: <?php /* 函数功能:对二维数组以某一键名进行分组相加,返回新的二维数组 * 参数说明:$arr-源数组:$new_arr-相加后得到的新数组:$target_key-要分组的键名
-
php对二维数组按指定键值key排序示例代码
复制代码 代码如下: function array_sort($array, $key){ if(is_array($array)){ $key_array = null; $new_array = null; for( $i = 0; $i < count( $array ); $i++ ){ $key_array[$array[$i][$key]] = $i; } ksort($key_array); $j = 0; foreach($key_array as $k => $v){ $ne
-
PHP按指定键值对二维数组进行排序的方法
本文实例讲述了PHP按指定键值对二维数组进行排序的方法.分享给大家供大家参考,具体如下: 问题: 有数组: 复制代码 代码如下: array(0=>array('id'=>1,'price'=>50),1=>array('id'=>2,'price'=>60)); 要求根据数组的price这个字段进行排序. 实现代码如下: <?php $array[] = array('id'=>1,'price'=>50); $array[] = array('id
-
php自定义排序uasort函数示例【二维数组按指定键值排序】
本文实例讲述了php自定义排序uasort函数.分享给大家供大家参考,具体如下: 项目需要风险排序,按 I(安全)<L(低风险)<M(中风险)<H(高风险) 的级别来排序 由于H排在I的前面,所以不能直接用sort来排序,要自定义. 用uasort()函数来自定义排序: /* * 二维数组按指定键值排须 */ function arr_sort($array,$key,$order="asc"){//asc是升序 desc是降序//按 I<L<M<H
-
PHP二维数组实现去除重复项的方法【保留各个键值】
本文实例讲述了PHP二维数组实现去除重复项的方法.分享给大家供大家参考,具体如下: 对于如下二维数组,要求对其进行去重: $arr = array( '0'=>array( 'name'=>'james', 'age'=>30, ), '1'=>array( 'name'=>'susu', 'age'=>26, ), '2'=>array( 'name'=>'james', 'age'=>30, ), 'new'=>array( 'name'=&
-
PHP实现通过二维数组键值获取一维键名操作示例
本文实例讲述了PHP实现通过二维数组键值获取一维键名操作.分享给大家供大家参考,具体如下: 有如下既定数组: $inviteType = [ '扫码' => [ 'type' => 0, 'point' => 5, ], '评论' => [ 'type' => 1, 'point' => 5, ], '分享' => [ 'type' => 2, 'point' => 10, ], '邀请' => [ 'type' => 3, 'point'
-
PHP实现二维数组按指定的键名排序的方法示例
本文实例讲述了PHP实现二维数组按指定的键名排序的方法.分享给大家供大家参考,具体如下: <?php /*二维数组按指定的键值排序*/ function array_sort($array,$keys,$type='asc'){ if(!isset($array) || !is_array($array) || empty($array)){ return ''; } //排序字段名,如:id if(!isset($keys) || trim($keys)==''){ return ''; }
-
详解PHP 二维数组排序保持键名不变
对二维数组指定的键名排序,首先大家想到的是array_multisort函数,关于array_multisort的用法我之前也写了一篇废话不多言,我们看个实例: <?php $data = array( 1001 => array( 'age' => 22, 'name' => '鸠摩智' ), 1007 => array( 'age' => 21, 'name' => '慕容复' ), 1004 => array( 'age' => 27, 'nam
-
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
本文实例讲述了php数组实现根据某个键值将相同键值合并生成新二维数组的方法.分享给大家供大家参考,具体如下: 源数据: $infos = array( array( 'a' => 36, 'b' => 'xa', 'c' => '2015-08-28 00:00:00', 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png' ), array( 'a' => 3, 'b' => 'vd', 'c' => '20
-
php二维数组按某个键值排序的实例讲解
排序前 Array ( [0] => Array ( [name] => 龙 [age] => 2017-02-28 ) [1] => Array ( [name] => 龙2 [age] => 2017-03-14 ) [2] => Array ( [name] => 小3 [age] => 2017-05-09 ) [3] => Array ( [name] => 龙4 [age] => 2017-02-03 ) [4] =>
-
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
本文实例讲述了PHP编程实现多维数组按照某个键值排序的方法.分享给大家供大家参考,具体如下: 实现对多维数组按照某个键值排序的两种解决方法(array_multisort和array_sort): 第一种: array_multisort()函数对多个数组或多维数组进行排序. //对数组$hotcat按照count键值大小降序进行排序: $hotcat =array( array('1501'=>array('catid'=>'1546','catname'=>'数组排序 一级','co
-
php删除二维数组中的重复值方法
实例如下所示: //二维数组去掉重复值 public function a_array_unique($array){ $out = array(); foreach ($array as $key=>$value) { if (!in_array($value, $out)){ $out[$key] = $value; } } $out = array_values($out); return $out; } 以上这篇php删除二维数组中的重复值方法就是小编分享给大家的全部内容了,希望能给大家
-
PHP实现二维数组按某列进行排序的方法
本文实例讲述了PHP实现二维数组按某列进行排序的方法.分享给大家供大家参考,具体如下: /* * 二维数组 按某列排序 * array_multisort($arr1,$arr2) * 手册 例子如下 * */ $data[] = array('volume' => 67, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 1); $data[] = array('volume' => 85, 'edi
-
Java一维数组和二维数组元素默认初始化值的判断方式
目录 一.数组与数组元素 二.一维数组 1.元素为基本数据类型时 2. 数组元素为引用类型时 三.二维数组 1. int[][] arr = new int[2][2] 2. int[][] arr = new int[2][] 一.数组与数组元素 Java中数组是引用类型 数组的元素可以是基本类型也可以是引用类型,弄清数组元素的类型可以帮助我们去理解数组元素默认初始化 二.一维数组 一维数组元素默认初始化值的情况分为两种,元素为基本数据类型和引用数据类型 1.元素为基本数据类型时 整型类型(b
-
php对二维数组进行相关操作(排序、转换、去空白等)
技巧提示: array_keys($array) //返回所有键名 array_values($array) //返回所有键值 $result=array_reverse($input); //将数组颠倒,不保留键名 $result_keyed=array_reverse($input,true); //将数组颠倒,保留键名 array_keys($array,"blue"); //返回值为blue的键名 1. PHP二维数组去重复项函数 PHP数组去除重复项有个内置函数array_
-
javascript二维数组和对象的深拷贝与浅拷贝实例分析
本文实例讲述了javascript二维数组和对象的深拷贝与浅拷贝.分享给大家供大家参考,具体如下: 这篇文章主要为大家详细介绍了js实现数组和对象的深浅拷贝, 1.浅拷贝: 将原对象或原数组的引用直接赋给新对象,新数组,新对象/数组只是原对象的一个引用 2.深拷贝: 创建一个新的对象和数组,将原对象的各项属性的"值"(数组的所有元素)拷贝过来,是"值"而不是"引用" JavaScript的数据类型分为原始数据类型和对象类型.二者在内存中存放的方式
-
java int类型二维数组实现“杨辉三角”的完整实例
杨辉三角的规律: 1.每行的数据个数和在第几行一样. 2.每行第一个数和最后一个数都是1. 3.每行除了第一个数据和最后一个数据 其他数据的值等于上面一行的对应列的值和左对角值的和.例如:a[2][1]=a[1][0]+a[1][1] 根据上面的规律我们设计程序 private static void demo(){ int[][] ints = new int[10][]; //动态给ints数组的一维赋值一个不同的数组 for (int i = 0; i < ints.length; i++
随机推荐
- Easy UI动态树点击文字实现展开关闭功能
- oracle常见故障类别及规划解析
- Redis教程(十):持久化详解
- 详解jquery插件jquery.viewport.js学习使用方法
- IIS+PHP+MySQL环境中PHP.INI需要注意的几个地方
- 在Asp.net中为图像加入水印信息并保存为Jpg类型
- python操作字典类型的常用方法(推荐)
- jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
- JS定时器使用,定时定点,固定时刻,循环执行详解
- jquery图片放大镜功能的实例代码
- 非常实用的12个jquery代码片段
- C#实现Stream与byte[]之间的转换实例教程
- C#实现自定义定时组件的方法
- IIS中查看W3P.exe进程对应的应用程序池的方法
- Android开发中Activity创建跳转及传值的方法
- Java+MyBatis+MySQL开发环境搭建流程详解
- Android gradle打包并自动上传的方法
- python实现简易通讯录修改版
- python 实现读取一个excel多个sheet表并合并的方法
- Mysql 8.0安装及重置密码问题