php 二维数组指定字段排序,PHP 二维数组根据某个字段按指定排序方式排序

/**

* 二维数组根据某个字段按指定排序方式排序

* @param $arr array 二维数组

* @param $field string 指定字段

* @param int $sort_order string SORT_ASC 按照上升顺序排序, SORT_DESC 按照下降顺序排序(具体请参考array_multisort官方定义)

* @param int $sort_flags string 排序类型标志(具体请参考array_multisort官方定义)

* @return mixed

*

* demo

* // 定义数组

* $arr = [['name'=>'bbb'], ['name'=>'aaa'], ['name'=>'Ccc']];

* // 需要按照name字段字符串升序排序

* $arr = arraySort($arr, 'name', SORT_ASC, SORT_STRING);

* // 需要按照name字段字符串升序排序,但忽略大小写

* $arr = arraySort($arr, 'name', SORT_ASC, SORT_FLAG_CASE | SORT_STRING);

*/

function multiArraySort($arr, $field, $sort_order = SORT_ASC, $sort_flags = SORT_REGULAR)

{

// 异常判断

if (!$arr || !is_array($arr) || !$field) {

return $arr;

}

// 将指定字段的值存进数组

$tmp = [];

foreach ($arr as $k => $v) {

$tmp[$k] = $v[$field];

}

if (!$tmp) {

return $arr;

}

// 调用php内置array_multisort函数

array_multisort($tmp, $sort_order, $sort_flags, $arr);

return $arr;

}

PHP 二维数组根据某个字段排序

二维数组根据某个字段排序有两种办法,一种是通过sort自己写代码,一种是直接用array_multisort排序函数 一. 手写arraysort PHP的一维数组排序函数: sort  对数组的值按 ...

php二维数组根据某个字段去重

php的二维数组根据某个字段去重,在这默认为二维数组的结构是一样的,现在根据二维数组里的id字段去重,把id相同的重复的元素去掉 /** * 二维数组根据某个字段去重 * @param array $ ...

PHP二维数组按某个字段排序

//准备 二维数组 //按一个字段排序 foreach($rank as $key=>$val){ $dos[$key] = $val['timelength']; } array_multis ...

extract_by_one 根据二维数组中某字段来提取数组信息,查看有无重复信息

public function tt(){ $param = array( array ( 'hykno' => '2222222-CB', 'tcdk_fid' => '458B6D70 ...

PHP 二维数组根据某个字段排序 复制代码 array_multisort

//二维数组,按照里面的age从大到小降序,代码如下 <?php header('Content-Type:text/html;Charset=utf-8'); $arrUsers = arra ...

二维数组针对某字段排序 - array&lowbar;multisort&lpar;&rpar;

/** * 针对二维数组下的某字段排序 * @param array $myarr 被排序数组 * @param string $sort_key 排序根据字段 * @param flag $sort ...

php将一个二维数组按照某个字段值合并成一维数组,如果有重复则将重复的合并成二维数组

版权声明:本文为博主原创文章,未经博主允许不得转载. 最近工作中碰到一个问题,用PHP将一个二维数组按照二维数组中的各个项中的某个特定字段值合并成一维数组,如果有重复则将重复的合并成二维数组,生成的二 ...

PHP中根据二维数组中某个字段实现排序

想要实现二维数组中根据某个字段排序,一般可以通过数组循环对比的方式实现.这里介绍一种更简单的方法,直接通过PHP函数实现.array_multisort() :可以用来一次对多个数组进行排序,或者根据 ...

PHP使用array&lowbar;filter查找二维数组中符合字段和字段值的数据集合

1.方法: /** * 获取符合字段和字段值的数组集合 * @param array $data 待过滤数组 * @param string $field 要查找的字段 * @param $value ...

随机推荐

C&num;基础-out与ref字段

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...

SOME:收缩数据库日志文件,查看表数据量和空间占用,查看表结构索引修改时间

---收缩数据库日志文件 USE [master]ALTER DATABASE yourdatabasename SET RECOVERY SIMPLE WITH NO_WAITALTER DATAB ...

Hadoop启动报Error&colon; JAVA&lowbar;HOME is not set and could not be found解决办法

Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found. 解决办法: 修改/etc/hadoop/hadoop-env.sh ...

Pizza pieces

Pizza pieces Description In her trip to Italy, Elizabeth Gilbert made it her duty to eat perfect piz ...

JQuery window、document、 body

我电脑屏幕分辨率:1440 * 900   最大化浏览器,刷新浏览器 alert($(window).width() + "---" + $(window).height()); ...

Java数据库连接--JDBC基础知识&lpar;操作数据库:增删改查&rpar;

一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

Spring EL中的类操作符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值