php - 如何按某个键对多维数组进行排序?

标签 php arrays sorting multidimensional-array

这应该很简单,但是如何进行呢? 我想通过键对多维数组进行排序,如下所示:

Array (
[0] => Array
    (
        [iid] => 1
        [invitee] => 174
        [nid] => 324343
        [showtime] => 2010-05-09 15:15:00
        [location] => 13
        [status] => 1
        [created] => 2010-05-09 15:05:00
        [updated] => 2010-05-09 16:24:00
    )

[1] => Array
    (
        [iid] => 1
        [invitee] => 220
        [nid] => 21232
        [showtime] => 2010-05-09 15:15:00
        [location] => 12
        [status] => 0
        [created] => 2010-05-10 18:11:00
        [updated] => 2010-05-10 18:11:00
    ))

假设我想按 [status] 排序,我该如何实现? 提前致谢!

最佳答案

//define a comparison function
function cmp($a, $b) {
    if ($a['status'] == $b['status']) {
        return 0;
    }
    return ($a['status'] < $b['status']) ? -1 : 1;
}

usort($array, "cmp");

这应该做你想做的,你可以改变比较函数来排序你想要的任何键。

关于php - 如何按某个键对多维数组进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2804690/

相关文章:

PHP MySQL 服务从多个 id 获取数据

php - 在脚本中定义的变量,但不作为函数中的参数。怎么了?

c++ - 扁平化为 1D 数组的 2D 和 3D 数组的等效迭代?

javascript - 在 MVC 中将 2D 对象数组 C# 转换为 Javascript

PHP - 在数组中查找最小值并组合所有可能的数字以达到给定的总和

MySQL 以 5 分钟为间隔订购 block

php - curl php HTTP/2 流 0 没有完全关闭

php - PHP 中 PDO::MYSQL_ATTR_MAX_BUFFER_SIZE 发生 fatal error

arrays - 在一系列值发生变化的地方分割 Smalltalk 数组的惯用方法是什么?

Java排序列表,首先按长度然后按字母顺序排列流