一个PHP二维数组排序的函数分享
二维数组在PHP开发中经常遇到,但是他的排序就不如一维数组那样用内置函数来的方便了,二维数组的排序需要我们自己写函数处理了,这里UncleToo给大家分享一个PHP二维数组排序的函数:
functionarray_sort($arr,$keys,$type='asc'){
$keysvalue= $new_array= array();
foreach($arras$k=>$v){
$keysvalue[$k] = $v[$keys];
}
if($type== 'asc'){
asort($keysvalue);
}else{
arsort($keysvalue);
}
reset($keysvalue);
foreach($keysvalueas$k=>$v){
$new_array[$k] = $arr[$k];
}
return$new_array;
}
函数的三个参数说明:
$arr:要排序的数组
$keys:指定根据哪个键值排序
$type:排序方式,升序还是降序,默认为升序
这个PHP函数可以实现对一个二维数组根据指定键值进行排序,并返回排序后的数组。
$newArray= array_sort($array,'price');
相关推荐
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
数据结构很重要,算法+数据结构+文档=程序使用PHP描述冒泡排序算法,对象可以是一个数组 复制代码 代码如下: //冒泡排序(数组排序)function bubble_sort($array) {$count = count($array);if ($count <= 0)return false;for($i=0; $i<$count; $i++){for($j=$count-1; $j>$i; $j–){if ($array[$j] < $array[$j-1]){$tmp =
-
php二维数组排序与默认自然排序的方法介绍
php二维数组排序函数,默认自然排序,即sort排序.这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释. 复制代码 代码如下: /** * @function 二维数组自然排序 * @author www.phpernote.com * @param array $array 需要排序的数组(二维) * @param string key 需要根据哪个键排序 * @param string order 排序方式(SORT_ASC,SORT_DESC) * @param st
-
PHP实现二维数组按某列进行排序的方法
本文实例讲述了PHP实现二维数组按某列进行排序的方法.分享给大家供大家参考,具体如下: /* * 二维数组 按某列排序 * array_multisort($arr1,$arr2) * 手册 例子如下 * */ $data[] = array('volume' => 67, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 1); $data[] = array('volume' => 85, 'edi
-
php冒泡排序、快速排序、快速查找、二维数组去重实例分享
一.冒泡排序 复制代码 代码如下: //冒泡排序function bubble_sort($array){ $count=count($array); if($count <= 0){ return false; } for($i=0;$i<$count;$i++){ for($j=0;$j<$count-$i-1;$j++){ if( $array[$j] > $array[$j+1] ){
-
PHP 多维数组的排序问题 根据二维数组中某个项排序
PHP内置函数 array_multisort 要求每个数组大小一样 $areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序 复制代码 代码如下: foreach($areaArray as &$areas) { $times = $numbers = array(); foreach($areas as $province => $v) { $times[$province] = $v['times']; $numbers[$province] = $v['number
-
PHP二维数组排序的3种方法和自定义函数分享
关于排序一般我们都是通过数据库或者nosql(eg:redis)先排好序然后输出到程序里直接使用,但是有些时候我们需要通过PHP直接来对数组进行排序,而在PHP里存储数据用到最多的就是对象和数组,但处理较多的就是数组,因为有非常丰富的内置函数库(其实对象一定程度上也可以理解为是数组),这些函数库很大程度上可以帮助我们实现某些功能.常用的系统函数有sort.asort.arsort.ksort.krsort等等,这里我主要说下对二维数组的排序,两种方法: 一.用PHP自带array_multiso
-
PHP排序之二维数组的按照字母排序实现代码
复制代码 代码如下: <?php /** * Sort an two-dimension array by some level two items use array_multisort() function. * * sysSortArray($Array,"Key1","SORT_ASC","SORT_RETULAR","Key2"--) * @author Chunsheng Wang <wwccss@26
-
php二维数组排序方法(array_multisort usort)
例如像下面的数组: 复制代码 代码如下: $users = array( array('name' => 'tom', 'age' => 20) , array('name' => 'anny', 'age' => 18) , array('name' => 'jack', 'age' => 22)); 希望能按照age从小到大进行排序.笔者整理了两个方法出来,分享给大家. 1.使用array_multisort 使用这个方法,会比较麻烦些,要将age
-
php中二维数组排序问题方法详解
PHP中二维数组排序,可以使用PHP内置函数uasort() 示例一: 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联 回调函数如下:注意回调函数的返回值是负数或者是false的时候,表示回调函数的第一个参数在前,第二个参数在后排列 $person = array( array('num'=>'001','id'=>6,'name'=>'zhangsan','age'=>21), array('num'=>'001','id'=>7,'name'=>'
-
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
随机推荐
- jquery选择器大全 全面详解jquery选择器
- IOS手势操作(拖动、捏合、旋转、点按、长按、轻扫、自定义)
- 扩展String功能方法
- PHP中利用sleep函数实现定时执行功能实现代码
- 学习php设计模式 php实现建造者模式
- C#实现分页组件的方法
- 用定制标签库和配置文件实现对JSP页面元素的访问控制
- 硬盘浏览程序,保存成网页格式便可使用
- 数据库触发器(Trigger)的一点使用心得
- sql中all,any,some用法
- win2008 R2中安装MySQL出现ODBC连接器安装错误
- jquery操作checked属性以及disabled属性的多种方法
- JavaScript 值类型和引用类型的初次研究(推荐)
- 十大 Node.js 的 Web 框架(快速提升工作效率)
- Java GC 机制与内存分配策略详解
- java web中使用cookie记住用户的账号和密码
- 炽热的文字
- Android利用Intent实现读取图片操作
- Android实现图片区域裁剪功能
- Java适配器模式应用之电源适配器功能详解