php三种方式对二维数组进行花样排序
来源:互联网 发布:淘宝到v3是否可以贷款 编辑:程序博客网 时间:2024/04/29 05:05
以下分别使用了冒泡排序,array_multisort, usort对二维数组进行排序
<?php$array = [ 0 => ['name' => 'lele', 'score' => 77], 1 => ['name' => 'haha', 'score' => 100], 2 => ['name' => 'xly', 'score' => 67], 3 => ['name' => 'mao', 'score' => 67], 4 => ['name' => 'ming', 'score' => 98],];//冒泡排序function sort_pop(&$array, $order = 'asc'){ $len = count($array); if ($order == 'asc') {//从小到大排序 for ($i=0; $i < $len; $i++) { for ($j=$len-1; $j >$i ; $j--) { if ($array[$j]['score'] < $array[$j - 1]['score']) { swap($array[$j], $array[$j - 1]); } } } } else {//从大到小排序 for ($i=0; $i < $len; $i++) { for ($j=0; $j < $len-$i-1; $j++) { if ($array[$j]['score'] < $array[$j + 1]['score']) { swap($array[$j], $array[$j+1]); } } } }}function swap(&$a, &$b){ $temp = $a; $a = $b; $b = $temp;}//(1)冒泡排序sort_pop($array, 'asc');// (2) 使用php自身的函数// $score = array_column($array, 'score');// $name = array_column($array, 'name');// // 将$array数组按照score 顺序排序,按照name倒序排序// array_multisort($score, SORT_ASC, SORT_NUMERIC, $name, SORT_DESC, SORT_STRING, $array);// (3)使用自定义函数进行排序// usort($array, function ($a, $b) {// if ($a['score'] == $b['score']) {// return 0;// }// return $a['score'] < $b['score'] ? -1 : 1;// });var_dump($array);exit;
阅读全文
0 0
- php三种方式对二维数组进行花样排序
- php对二维数组进行排序
- php自定义对二维数组进行排序
- php对二维数组进行排序
- 对php中的二维数组进行排序
- php二维数组排序的三种实现方式
- 代码分享:php对二维数组进行排序
- php对二维数组进行排序的简单实例
- php对二维数组进行排序的简单实例
- PHP按照某个键值对二维数组进行排序
- PHP对二维数组按字段进行排序
- PHP 对二维数组进行指定key排序
- php自义定对二维数组进行排序
- PHP对二维数组进行双条件排序的实现
- php 对二维数组的指定键值进行排序
- 对php二维数组排序
- php对二维数组进行排序、二维数组去掉重复值
- qsort对动态二维数组进行排序
- 数据结构 树 层次遍历二叉树 C语言版
- springboot 静态资源处理
- C++文件操作——获取当前工作路径的几种方法
- 广播机制
- Maven知识总结
- php三种方式对二维数组进行花样排序
- Spring 自定义HttpMessageConverter实现MongoDb自定义ObjectId对象为字符串
- sublime3个别插件安装说明
- AOP
- Gym-101498K
- 第一篇博客
- Java 反转链表
- UE4学习笔记19th:使用UMG的用户接口
- 职场小白如何学习数据分析?