我从数据库中获取数据,导致数组具有无限制的对象,如下所示(示例为2个对象,但可以有更多):
array(2)
{
[0] object(stdClass)#34 (6)
{
["id"] string(2) "32"
["voting_id"] string(2) "42"
["answer"] string(4) "No"
["color"] string(7) "#F7464A"
["votes"] string(1) "1"
["percentage"] float(0.166666666667)
}
[1] object(stdClass)#33 (6)
{
["id"] string(2) "31"
["voting_id"] string(2) "42"
["answer"] string(2) "Yes"
["color"] string(7) "#E2EAE9"
["votes"] string(1) "5"
["percentage"] float(0.833333333333)
}
}
我想通过投票或百分比asc / desc对此数组进行排序。我尝试过:
function sorterVotes($a, $b) {
if ( $a->votes < $b->votes ) return -1;
if ( $a->votes > $b->votes ) return 1;
return 0;
}
usort($answers, 'sorterVotes');
var_dump($answers);
但唯一可以排序的是[0]和[1]更改,但这对我没有帮助,因为我稍后会通过foreach浏览该数组。 如何按投票/百分比和asc / desc?
对n个对象的数组进行排序如果有人可以提供帮助,那会很棒。感谢。