sub7, no estás utilizando correctamente el método de ordenación
burbuja, el contador del segundo bucle, debe iniciar con el valor del contador del primer bucle pero aumentado en uno.
Un pequeño ejemplo con datos ficticios:
Código PHP:
Ver original$lista[]->votos = 5;
$lista[]->votos = 3;
$lista[]->votos = 8;
$lista[]->votos = 4;
for ($i = 0; $i < $numTracks; $i++){
for($j = $i + 1; $j < $numTracks; $j++){
if($lista[$i]->votos > $lista[$j]->votos){
$temp = $lista[$j];
$lista[$j] = $lista[$i];
$lista[$i] = $temp;
}
}
}
foreach ($lista as $d){
echo "Votos: " . $d->votos . "\n";
}
Lo anterior imprime esto:
Y si quieres invertir el orden, solamente cambia el "mayor que" por "menor que" en la condición.
Saludos