Buongiorno a tutti,
non riesco a venirne a capo con questo problema di ordinamento elementi array.
In pratica se i valori di 'number' sono uguali non mi mantiene l'ordine originale, ma me lo inverte, infatti il seguento codice:
Codice PHP:
function cmp($a, $b){
if ($a['number'] == $b['number']) {
return 0;
}
return ($a['number'] < $b['number']) ? -1 : 1;
}
$a = array(
array( 'label' => 'ciccio', 'number' => 5),
array( 'label' => 'pippo', 'number' => 2),
array( 'label' => 'poldo', 'number' => 5),
array( 'label' => 'carlo', 'number' => 1),
array( 'label' => 'nunzio', 'number' => 5),
);
usort( $a, "cmp" );
echo '<pre>';
print_r($a);
echo '</pre>';
mi restituisce questo
[0] => Array
(
[label] => carlo
[number] => 1
)
[1] => Array
(
[label] => pippo
[number] => 2
)
[2] => Array
(
[label] => nunzio
[number] => 5
)
[3] => Array
(
[label] => poldo
[number] => 5
)
[4] => Array
(
[label] => ciccio
[number] => 5
)
grazie mille a tutti per la pazienza!