首页 » 资讯 » 生活常识 » 正文

二维数组排序的三种方法(python多维数组排序)

放大字体  缩小字体 发布日期:2022-12-08  来源:互联网  作者:麻布岗信息网  浏览次数:176
导读

今天有麻布岗信息网小编为大家分享以下内容: 如果你经常写 PHP,要说你没用过数组,那简直是不可能的。PHP 一个数组可以走遍大街小巷,行遍万水千山。数组相关的函数也马虎不得,如影随形。 今天说说一个稍显棘手的问题,多维数组的排序。 学习时间 比如下面的数组, 如果想要根据 order 的值进行排序(升序,降序),怎么做呢? 你需要使用 usort 函数,且需要声明一个回调函数: function sortByOrder($a, $b) { return $a[\'

今天有麻布岗信息网小编为大家分享以下内容:

如果你经常写 PHP,要说你没用过数组,那简直是不可能的。PHP 一个数组可以走遍大街小巷,行遍万水千山。数组相关的函数也马虎不得,如影随形。

今天说说一个稍显棘手的问题,多维数组的排序。

学习时间

比如下面的数组,

如果想要根据 order 的值进行排序(升序,降序),怎么做呢?

你需要使用 usort 函数,且需要声明一个回调函数:

function sortByOrder($a, $b) { return $a['order'] - $b['order'];}usort($myArray, 'sortByOrder');

这在 PHP 5.2 以及早期的版本内如此使用,之后的 PHP 版本,可以直接使用匿名函数,简写如下:

usort($myArray, function($a, $b) { return $a['order'] - $b['order'];});

随着 PHP 版本的迭代,越来越多的新特性添加进去,特别是 PHP 7 以后的太空舱操作符,给这样的回调函数提供了更灵活简便的用法:

usort($myArray, function($a, $b) { return $a['order'] <=> $b['order'];}); 由特殊到一般

上面的函数处理都是针对特定的数组进行的,现在我们把情形推向一般,写一个可以通用的处理函数,可以用于对多位数组的排序处理:

特别地,如果你需要保留排序前后的键值索引关系,那么就要使用 uasort 函数了。用法与 usort 同。

写在最后

因为处理的数组结构不可确定,在实际使用中,回调函数内开发者可灵活操作,已达到排序的目的。

麻布岗信息网(www.517338.com)综合在线信息,汇聚城市生活,美食,购物,旅游,房产,交通,家居,财经,教育,健康,娱乐,历史,汽车,生活消费门户网站

 
关键词: 数组 多维 函数
 
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:http://www.517338.com/news/show-146545.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。