PHP 通过其中一个键对二维数组进行排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 通过其中一个键对二维数组进行排序相关的知识,希望对你有一定的参考价值。

/**
 * sort_array_by_key()
 * 
 * @param array $array
 * @param string|int $key
 * @return array
 * 
 * @author Alejo
 */
function array_sort_by_key($array, $key)
{
    $tmpArKeys = array();
    foreach ($array as $ar_item)
    {
        $tmpArKeys[] = $ar_item[$key];
    }
    asort($tmpArKeys);

    $newAr = array();
    foreach ($tmpArKeys as $n_key => $n_val)
    {
        $newAr[] = $array[$n_key];
    }
    return $newAr;
}


/// Example

$people = array(
                array(
                'Name' => 'John',
                'Lastname' => 'Doe',
                'E-mail' => 'john_doe@domain.com'
                ),
                array(
                'Name' => 'Harry',
                'Lastname' => 'Potter',
                'E-mail' => 'harrypotter@hogwarts.com'
                ),
                array(
                'Name' => 'Lady',
                'Lastname' => 'Gaga',
                'E-mail' => 'ladygaga@popst.ar'
                )

                );

$sorted_people = array_sort_by_key($people, 'Name');
print_r($sorted_people);

/// Example output:
/*
Array
(
    [0] => Array
        (
            [Name] => Harry
            [Lastname] => Potter
            [E-mail] => harrypotter@hogwarts.com
        )

    [1] => Array
        (
            [Name] => John
            [Lastname] => Doe
            [E-mail] => john_doe@domain.com
        )

    [2] => Array
        (
            [Name] => Lady
            [Lastname] => Gaga
            [E-mail] => ladygaga@popst.ar
        )

)

*/

以上是关于PHP 通过其中一个键对二维数组进行排序的主要内容,如果未能解决你的问题,请参考以下文章

在 PHP 中按整数键对对象进行排序

PHP按另一个数组中的特定键对数组进行排序[重复]

php 按特定键对多维数组进行排序

使用字典中的键对对象数组进行排序

通过具有日期值的单个键对对象数组进行排序

javascript 通过嵌套键对对象数组进行排序