如何按字母顺序对PHP中的多维数组进行排序?

时间:2011-08-20 16:55:13

标签: php arrays codeigniter sorting

我用PHP编写的API(Codeigniter)根据选定的关键字输出用户如何在输出到JSON之前按字母顺序对此数组进行排序。

这是输出:

http://pastie.org/2402372

感谢所有输入!

2 个答案:

答案 0 :(得分:2)

这个有效。尝试,测试和真实:

function sort_by_lastname($a, $b) {
    $a = trim($a['user']['basic'][0]['lastname']);
    $b = trim($b['user']['basic'][0]['lastname']);
    return strcmp($a,$b);
}

uasort($array['contacts'],'sort_by_lastname');

答案 1 :(得分:1)

您可以使用usort:http://php.net/manual/en/function.usort.php

使您可以使用自己的功能进行排序。

示例:

$users = $your_array['contacts'];
// or $users = $your_array->contacts;

usort ($users, 'sort_by_lastname');

$your_array['contacts'] = $users;
// or $your_array->contacts = $users; if it's json instead of array

function sort_by_lastname($a, $b)
{
    return strcmp($a['user']['basic']['lastname'], $b['user']['basic']['lastname']);
}