我正在尝试按数组值对数据进行排序,该数值是在数组的外部计算的 - 我看到其他问题与我的类似,但没有提到按照给定的数组OUTSIDE进行排序。我目前正在尝试使用SPL,但它不会将结果从最高到最低排序 - 我不知道为什么。任何想法都将不胜感激。
class SimpleHeapSort extends SplMaxHeap {
public function compare($a, $b) {
return strcmp($a, $b);
}
}
$r_array = array();
$obj = $this->request_data->d->results;
$ic = count($obj);
print("<table cellspacing=10>");
for($i=0;$i<$ic;$i++){
$r_array[$i] = array('Title'=>$obj[$i]->Title,'Description'=>$obj[$i]->Description,'Url'=>$obj[$i]->Url);
$fb_likes[$i] = reset($this->get_fb_likes($r_array[$i]['Url']) );
$heap = new SplMaxHeap();
$heap->insert($fb_likes[$i]->total_count);
foreach($heap as $number) {
echo "<tr><td>".$r_array[$i]['Title']."</td>";
echo "<td>".$r_array[$i]['Description']."</td>";
echo "<td>".$r_array[$i]['Url']."</td>";
echo "<td>fb" . $number . "</td></tr>";
}
}
print("</table>");
我想按$fb_likes->total_count
对结果(从最高到最低)排序 - 这是一个数字/整数。此值在$r_array[$i]
的外部计算。如何将每个结果从最高$fb_likes->total_count
数字值{{1}}排序?
虽然我目前正在尝试使用SPL,但我对任何替代方案都持开放态度。
提前感谢您的帮助。