按特定值在PHP中对数组进行排序

时间:2013-10-06 14:41:49

标签: php arrays sorting steam-web-api

如何从A-Z按字母顺序排序 this 数组?

我已经尝试$data['response']['games'][x]['name'],但根本不理解这个功能。

希望你能帮助我 - 谷歌搜索并搜索这个,但没有找到解决我问题的方法。

编辑:链接已更新。

代码: https://github.com/GabrielWanzek/GWSteamLib/

2 个答案:

答案 0 :(得分:1)

您可以使用usort()来实现此目的,这允许您定义自定义比较函数:

usort($data['response']['games'], function($a, $b) {
    return strcmp($a['name'], $b['name']);
});

请注意,$datastdClass类型的对象;它不是一个数组。

答案 1 :(得分:1)

尝试以下代码:

$games = $data['response']['games']; // is array
usort($games, 'compareName');
var_dump($games);

# want to change $data?
# $data['response']['games'] = $games;

function compareName($a1, $a2) {
    return strcmp($a1['name'], $a2['name']);
}