Я испытал затруднения из-за примеров в руководстве PHP, таким образом, я хотел бы спросить это здесь...
У меня есть массив объектов.. Существует ли способ отсортировать его на основе содержания объекта?
Например, мой массив:
Array
(
[0] => stdClass Object
(
[id] => 123
[alias] => mike
)
[1] => stdClass Object
(
[id] => 456
[alias] => alice
)
[2] => stdClass Object
(
[id] => 789
[alias] => zeke
)
[3] => stdClass Object
(
[id] => 987
[alias] => dave
)
)
Как я сортирую массив по [псевдоним] объектов?
В примере вывод должен быть:
Array
(
[0] => stdClass Object
(
[id] => 456
[alias] => alice
)
[1] => stdClass Object
(
[id] => 987
[alias] => dave
)
[2] => stdClass Object
(
[id] => 123
[alias] => mike
)
[3] => stdClass Object
(
[id] => 789
[alias] => zeke
)
)
Заранее спасибо!
Используйте usort()
. Вы указываете функцию для такого сравнения, и сортировка выполняется на основе функции. Например:
function my_comparison($a, $b) {
return strcmp($a->alias, $b->alias);
}
$arr = ...;
usort($arr, 'my_comparison');