PHP实现指定字段的多维数组排序函数分享

 这篇文章主要介绍了PHP实现指定字段的多维数组排序函数分享,本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序,需要的朋友可以参考下

 
 

PHP数组排序可以用array_multisort方法实现,但是如果是多维数组,并且我们要指定数组中的某个字段进行排序,那么这就需要我们自己写方法实现了。本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序。

代码如下:

function sortArrByField(&$array, $field, $desc = false){
$fieldArr = array();
foreach ($array as $k => $v) {
$fieldArr[$k] = $v[$field];
}
$sort = $desc == false ? SORT_ASC : SORT_DESC;
array_multisort($fieldArr, $sort, $array);
}

以上就是PHP指定字段的多维数组排序方法,希望这段PHP代码对你带来帮助。

时间: 2024-12-22 16:20:18

PHP实现指定字段的多维数组排序函数分享的相关文章

PHP实现指定字段的多维数组排序函数分享_php技巧

PHP数组排序可以用array_multisort方法实现,但是如果是多维数组,并且我们要指定数组中的某个字段进行排序,那么这就需要我们自己写方法实现了.本文分享了一段PHP指定字段的多维数组排序方法的代码,这段代码可实现根据field字段对数组进行排序. 复制代码 代码如下: function sortArrByField(&$array, $field, $desc = false){   $fieldArr = array();   foreach ($array as $k => $

PHP二维数组排序函数

HP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义. 以下函数是对一个给定的二维数组按照指定的键值进行排序,先看函数定义:   function array_sort($arr,$keys,$type='asc'){ $keysvalue = $new_array = array(); foreach ($arr as $k=>$v){ $keysvalue[$k] = $v[$keys]; } if($type == 'asc'){

PHP多维数组排序函数 array_multisort() 实例讲解

一.先看最简单的情况. 有两个数组: $arr1 = array(1, 9, 5);$arr2 = array(6, 2, 4); array_multisort($arr1, $arr2); print_r($arr1); // 得到的顺序是1,5,9print_r($arr2); // 得到的顺序是6,4,2 我估计两个数组的值自始至终都是对应着的:1对应6,9对应2,5对应4.我们再加多一个数组看看会怎样: $arr1 = array(1, 9, 5);$arr2 = array(6, 2

array_multisort 多维数组排序函数

参数中的数组被当成一个表的列并以行来进行排序 - 这类似 sql 的 order by 子句的功能.第一个数组是要排序的主要数组.数组中的行(值)比较为相同的话,就会按照下一个输入数组中相应值的大小进行排序,依此类推.   <?php教程 $a1=array("dog","cat"); $a2=array("fido","missy"); array_multisort($a1,$a2); print_r($a1); p

php 多维数组排序 array_multisort函数用法

对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(array1,sorting order, sorting type,array2,array3..)是对多个数组或多维数组进行排序的函数. 第一个参数是数组,随后的每一个参数可能是数组,也可能是下面的排序顺序标志(排序标志用于更改默认的排列顺序)之一: SORT_ASC - 默认,按升序排列.(A-Z) SORT_DESC - 按降序排列.(Z-A) 随后可以指定

php根据某字段对多维数组进行排序的方法_php技巧

本文实例讲述了php根据某字段对多维数组进行排序的方法.分享给大家供大家参考.具体分析如下: 根据某字段对多维数组进行排序,在看到array_multisort方法的作用时突然想到,可以用来做这个方法 这段代码可实现根据field字段对数组进行排序 function sortArrByField(&$array, $field, $desc = false){ $fieldArr = array(); foreach ($array as $k => $v) { $fieldArr[$k]

php基础篇-二维数组排序 array_multisort

原文:php基础篇-二维数组排序 array_multisort 对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(array1,sorting order, sorting type,array2,array3..)是对多个数组或多维数组进行排序的函数. array1 必需.规定输入的数组. sorting order 可选.规定排列顺序.可能的值是 SORT_ASC 和 SORT_DESC. sorting t

php二维数组排序与默认自然排序的方法介绍_php实例

php二维数组排序函数,默认自然排序,即sort排序.这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释. 复制代码 代码如下: /**    * @function 二维数组自然排序    * @author www.phpernote.com    * @param array $array 需要排序的数组(二维)    * @param string key 需要根据哪个键排序    * @param string order 排序方式(SORT_ASC,SORT_DE

php自定义函数实现二维数组排序功能_php技巧

本文实例讲述了php自定义函数实现二维数组排序功能.分享给大家供大家参考,具体如下: /**作用: 二维数组排序函数,支持多键名排序 * 返回: 排序好的数组 * 使用: array_msort(数组,需要排序的键名,排序方式); * 例子: array_msort($cflist,"chapter_orderid","SORT_ASC"); * array_msort($arr,"name","SORT_ASC","