周谨瑜优秀作者
原创内容 来源:小居数码网 时间:2024-08-18 00:04:01 阅读() 收藏:44 分享:79 爆
导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有427个文字,大小约为2KB,预计阅读时间2分钟。
引言如果你经常写 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 同。
因为处理的数组结构不可确定,在实际使用中,回调函数内开发者可灵活操作,已达到排序的目的。
Happy coding :_)
上面就是小居数码小编今天给大家介绍的关于(php多维数组排序函数)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。
94%的朋友还想知道的:
(446)个朋友认为回复得到帮助。
部分文章信息来源于以及网友投稿,转载请说明出处。
本文标题:php一维数组排序教程+(php多维数组排序函数):http://sjzlt.cn/shuma/156606.html