php中array_multisort对多维数组排序的方法
本文实例讲述了php中array_multisort对多维数组排序的方法。分享给大家供大家参考。具体实现方法如下:
function sort_array($array, $keyid, $order='asc', $type='number') { if(is_array($array)) { foreach($array as $val) { $order_arr[] = $val[$keyid]; } $order = ($order == 'asc') ? SORT_ASC: SORT_DESC; $type = ($type == 'number') ? SORT_NUMERIC: SORT_STRING; array_multisort($order_arr, $order, $type, $array); } }
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
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根据某字段对多维数组进行排序的方法
本文实例讲述了php根据某字段对多维数组进行排序的方法.分享给大家供大家参考.具体分析如下: 根据某字段对多维数组进行排序,在看到array_multisort方法的作用时突然想到,可以用来做这个方法 这段代码可实现根据field字段对数组进行排序 function sortArrByField(&$array, $field, $desc = false){ $fieldArr = array(); foreach ($array as $k => $v) { $fieldArr[$k]
-
array_multisort实现PHP多维数组排序示例讲解
array_multisort - 对多个数组或多维数组进行排序 说明 bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] ) array_multisort (PHP 4, PHP 5) 如果成功则返回 TRUE,失败则返回 FALSE. array_multisort() 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被重
-
php比较多维数组中值的大小排序实现代码
如果值没有重复的情况,可以先用array_flip()来交换键和值,然后krsort(),最后再array_flip()交换回来,就可以比较大小了.如果要截取数组,可用array_slice(). 如果有值重复的情况,就要用到一些排序算法了,不过php有很强大的函数uasort(),使用自定义的比较函数对数组中的值进行排序并保持索引关联,usort()则会重建索引. 复制代码 代码如下: function cmp($a, $b){ if ($a["vote_num"] == $b[&q
-
PHP使用array_multisort对多个数组或多维数组进行排序
PHP中array_multisort可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被重新索引. 输入数组被当成一个表的列并以行来排序--这类似于 SQL 的 ORDER BY 子句的功能.第一个数组是要排序的主要数组.数组中的行(值)比较为相同的话就按照下一个输入数组中相应值的大小来排序,依此类推.--这句话是理解此函数用法的关键. 第一个参数必须是一个数组.接下来的每个参数可以是数组或者是下面列出的排序标志. 排序顺序
-
PHP实现指定字段的多维数组排序函数分享
PHP数组排序可以用array_multisort方法实现,但是如果是多维数组,并且我们要指定数组中的某个字段进行排序,那么这就需要我们自己写方法实现了.本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序. 复制代码 代码如下: function sortArrByField(&$array, $field, $desc = false){ $fieldArr = array(); foreach ($array as $k => $
-
php array_map array_multisort 高效处理多维数组排序
对多维数组排序,通用的作法是1 获取利用排序的数据并且将其放入数组$arrSort. 其中键索引为要排序数组的索引,保证唯一性 2 利用排序函数sort等对$arrSort进行排序. 3 遍历$arrSort, 根据其索引,获取多维数组的数据,重新构造排序后的多维数组. 复制代码 代码如下: Array ( [0] => Array ( [link] => test [name] => test.rpm [type] => file [size] => 988.9k [mti
-
php实现多维数组排序的方法示例
本文实例讲述了php实现多维数组排序的方法.分享给大家供大家参考,具体如下: //定义一个学生数组 $students = array( 256=>array('name'=>'jon','grade'=>98.5), 2=>array('name'=>'vance','grade'=>85.1), 9=>array('name'=>'stephen','grade'=>94.0), 364=>array('name'=>'steve','
-
php中多维数组按指定value排序的实现代码
呵呵,业务需要按多维数组中某个元素进行排序,在PHP中也是非常容易实现的,一个函数调用一个回调函数就搞定了.贴出代码: 复制代码 代码如下: $arr = array( 'index'=>array( 'name'=>'首页','order'=>3), 'intro'=>array( 'name'=>'企业概况','order'=>2), 'news'=>array( 'name'=>'新闻动态','order'=>1 ), 'product'=>
-
php简单实现多维数组排序的方法
本文实例讲述了php简单实现多维数组排序的方法.分享给大家供大家参考,具体如下: 之前在做一个功能的时候,必须要把数据放到二维数组里并且排序,然后上网找找解决思路, 这时候会用到array_multisort函数,array_multisort() 函数对多个数组或多维数组进行排序 先来看一个实例 <?php $data=array( 0=>array('one'=>34,'two'=>'d'), 1=>array('one'=>45,'two'=>'e'), 2
-
PHP 多维数组排序实现代码
array_multisort (PHP 4, PHP 5) array_multisort -- 对多个数组或多维数组进行排序 说明 bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] ) 如果成功则返回 TRUE,失败则返回 FALSE. array_multisort() 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被
-
php关于array_multisort多维数组排序的使用说明
一.先看最简单的情况.有两个数组: 复制代码 代码如下: $arr1 = array(1,9,5); $arr2 = array(6,2,4); array_multisort($arr1,$arr2); print_r($arr1); // 得到的顺序是1,5,9 print_r($arr2); // 得到的顺序是6,4,2 我估计两个数组的值自始至终都是对应着的:1对应6,9对应2,5对应4. 我们再加多一个数组看看会怎样: 复制代码 代码如下: $arr1 = array(1,9,5);
-
PHP 多维数组排序(usort,uasort)
数字索引数组: bool usort( array &$array, callback $cmp_function ) usort函数对指定数组(参数1)按指定方式(参数2)进行排序. 当我们想对多维数组进行排序时,多维数组的每个元素又是一数组类型,而两个数组如何比较大小?这是需要用户自定义的(是按每个数组的第一元素比较还是-). 复制代码 代码如下: <?php //定义多维数组 $a = array( array("sky", "blue"), a
随机推荐
- IOS开发笔记之禁用手势滑动返回功能的示例
- Python2.x中str与unicode相关问题的解决方法
- jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
- 如何编写高质量JS代码
- JavaScript在IE中“意外地调用了方法或属性访问”
- iOS的客户端菜单功能仿百度糯米/美团二级菜单
- Android 取消蓝牙配对框实现自动配对功能
- JS实现设置ff与ie元素绝对位置的方法
- 巧用CSS滤镜做图案文字
- 粗略计算在线时间,bug:ip相同
- JavaScript中的函数声明和函数表达式区别浅析
- Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法
- 获取客户端电脑日期时间js代码(jquery)
- SQLSever导入数据图文方法
- php缓冲 output_buffering的使用详解
- Centos/Ubuntu下安装nodejs教程
- Android ViewPager动态加载问题
- python中Matplotlib实现绘制3D图的示例代码
- PHP验证码类文件及调用方式代码详解
- vue中路由验证和相应拦截的使用详解