PHP 根据对象属性进行对象数组的排序(usort($your_data, "cmp");
)(inside the class: usort($your_data, array($this, "cmp"))
)
usort($your_data, array($this, "cmp"))
一、总结
1、 usort($your_data, "cmp");
2、usort($your_data, array($this, "cmp")) If you’re sorting the array from inside the class and your sorting function cmp is also defined inside the class, then use this:
二、PHP 根据对象属性进行对象数组的排序
根据对象属性进行对象数组的排序【转自 stackoverflow 】
Sort array of objects by object fields
Question
How can I sort this array of objects by one of its fields, like name or count ?
Array
(
[0] => stdClass Object
(
[ID] => 1
[name] => Mary Jane
[count] => 420
)
[1] => stdClass Object
(
[ID] => 2
[name] => Johnny
[count] => 234
)
[2] => stdClass Object
(
[ID] => 3
[name] => Kathy
[count] => 4354
)
....
Answer :
Use usort
, here’s an example adapted from the manual:
function cmp($a, $b)
{
return strcmp($a->name, $b->name);
}
usort($your_data, "cmp");
edits imported from comments:
If you’re sorting the array from inside the class and your sorting function cmp is also defined inside the class, then use this:
usort($your_data, array($this, "cmp"))