编程 对多个数组或多维数组进行排序

2024-11-17 05:10:28 +0800 CST views 2971

对多个数组或多维数组进行排序

#关于array_multisort 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。

bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )

我们先来看一段案例:

$data=[
    ['card'=>"中信银行",'id'=>"1481",'day'=>'9','repay'=>'29','limit'=>"40000"],
    ['card'=>"民生银行",'id'=>"1481",'day'=>'17','repay'=>'19','limit'=>"50000"],
    ['card'=>"交通银行",'id'=>"1441",'day'=>'18','repay'=>'25','limit'=>"60000"],
    ['card'=>"招商银行",'id'=>"1481",'day'=>'5', 'repay'=>'9','limit'=>"70000"]
];

现在我们需要按还款日最近的前面进行排序

$sort= array_map(create_function('$n', 'return $n["repay"];'), $data);
array_multisort($sort,SORT_DESC,$data );

array(4) {
  [0]=>
  array(5) {
    ["card"]=>
    string(12) "中信银行"
    ["id"]=>
    string(4) "1481"
    ["day"]=>
    string(1) "9"
    ["repay"]=>
    string(2) "29"
    ["limit"]=>
    string(5) "40000"
  }
  [1]=>
  array(5) {
    ["card"]=>
    string(12) "交通银行"
    ["id"]=>
    string(4) "1441"
    ["day"]=>
    string(2) "18"
    ["repay"]=>
    string(2) "25"
    ["limit"]=>
    string(5) "60000"
  }
  [2]=>
  array(5) {
    ["card"]=>
    string(12) "民生银行"
    ["id"]=>
    string(4) "1481"
    ["day"]=>
    string(2) "17"
    ["repay"]=>
    string(2) "19"
    ["limit"]=>
    string(5) "50000"
  }
  [3]=>
  array(5) {
    ["card"]=>
    string(12) "招商银行"
    ["id"]=>
    string(4) "1481"
    ["day"]=>
    string(1) "5"
    ["repay"]=>
    string(1) "9"
    ["limit"]=>
    string(5) "70000"
  }
}

0.png
2.png

参考http://php.net/manual/zh/function.array-multisort.php

复制全文 生成海报 PHP 编程 数据处理

推荐文章

7种Go语言生成唯一ID的实用方法
2024-11-19 05:22:50 +0800 CST
Vue3的虚拟DOM是如何提高性能的?
2024-11-18 22:12:20 +0800 CST
HTML5的 input:file上传类型控制
2024-11-19 07:29:28 +0800 CST
Nginx 防止IP伪造,绕过IP限制
2025-01-15 09:44:42 +0800 CST
55个常用的JavaScript代码段
2024-11-18 22:38:45 +0800 CST
nginx反向代理
2024-11-18 20:44:14 +0800 CST
Vue 3 中的 Fragments 是什么?
2024-11-17 17:05:46 +0800 CST
CSS 实现金额数字滚动效果
2024-11-19 09:17:15 +0800 CST
如何在Rust中使用UUID?
2024-11-19 06:10:59 +0800 CST
Go 如何做好缓存
2024-11-18 13:33:37 +0800 CST
php 连接mssql数据库
2024-11-17 05:01:41 +0800 CST
html夫妻约定
2024-11-19 01:24:21 +0800 CST
mendeley2 一个Python管理文献的库
2024-11-19 02:56:20 +0800 CST
为什么要放弃UUID作为MySQL主键?
2024-11-18 23:33:07 +0800 CST
git使用笔记
2024-11-18 18:17:44 +0800 CST
Golang Sync.Once 使用与原理
2024-11-17 03:53:42 +0800 CST
宝塔面板 Nginx 服务管理命令
2024-11-18 17:26:26 +0800 CST
什么是Vue实例(Vue Instance)?
2024-11-19 06:04:20 +0800 CST
Gin 框架的中间件 代码压缩
2024-11-19 08:23:48 +0800 CST
使用 Vue3 和 Axios 实现 CRUD 操作
2024-11-19 01:57:50 +0800 CST
程序员茄子在线接单