Ordinare gli array:
Tutti i webmaster che programmano in php si troveranno nell'esigenza di dover ordinare gli array.
Per ordinare gli array il linguaggio Php ci mette a disposizione delle funzioni:
- sort() (Ordine crescente e rinomina le chiavi)
- rsort() (Ordine DEcrescente e rinomina le chiavi)
- asort() (Ordine crescente con chiavi originali)
- arsort() (Ordine DEcrecente con chiavi originali)
- array_reverse() (Inverte l'ordine)
La funzione
sort() ordina un array in ordine crescente, e rinomina le sue chiavi partendo da zero.
Esempio:
<?
$provarray=array(5,'a',7,1,'r','c');
sort($provarray);
foreach($provarray as $chiave => $valore){
echo "provarray[".$chiave."]=".$valore."<br />";
}
?>
Otteniamo come risultato:
provarray[0]=a
provarray[1]=c
provarray[2]=r
provarray[3]=1
provarray[4]=5
provarray[5]=7
La funzione
rsort() ordina un array in ordine DEcrescente, e rinomina le sue chiavi partendo da zero.
Esempio:
<?
$provarray=array(5,'a',7,1,'r','c');
rsort($provarray);
foreach($provarray as $chiave => $valore){
echo "provarray[".$chiave."]=".$valore."<br />";
}
?>
Otteniamo come risultato:
provarray[0]=7
provarray[1]=5
provarray[2]=1
provarray[3]=r
provarray[4]=c
provarray[5]=a
La funzione
asort() ordina un array in ordine crescente e mantiene le sue chiavi originali.
Esempio:
<?
$provarray=array(5,'a',7,1,'r','c');
asort($provarray);
foreach($provarray as $chiave => $valore){
echo "provarray[".$chiave."]=".$valore."<br />";
}
?>
Otteniamo come risultato:
provarray[1]=a
provarray[5]=c
provarray[4]=r
provarray[3]=1
provarray[0]=5
provarray[2]=7
La funzione
arsort() ordina un array in ordine DEcrescente e mantiene le sue chiavi originali.
Esempio:
<?
$provarray=array(5,'a',7,1,'r','c');
arsort($provarray);
foreach($provarray as $chiave => $valore){
echo "provarray[".$chiave."]=".$valore."<br />";
}
?>
Otteniamo come risultato:
provarray[2]=7
provarray[0]=5
provarray[3]=1
provarray[4]=r
provarray[5]=c
provarray[1]=a
La funzione
array_reverse() inverte l'ordine e rinomina le chiavi.
Se vogliamo mantenere le chiavi originali dobbiamo scrivere:
array_reverse($array,true);
Esempio:
<?
$provarray=array(5,'a',7,1,'r','c');
$provarray2=array_reverse($provarray);
echo"array_reverse con chiavi rinominate:<br />";
foreach($provarray2 as $chiave => $valore){
echo "provarray2[".$chiave."]=".$valore."<br />";
}
echo "<br />";
$provarray3=array_reverse($provarray,true);
echo"array_reverse con chiavi originali:<br />";
foreach($provarray3 as $chiave => $valore){
echo "provarray3[".$chiave."]=".$valore."<br />";
}
?>
Otteniamo come risultato:
array_reverse con chiavi rinominate:
provarray2[0]=c
provarray2[1]=r
provarray2[2]=1
provarray2[3]=7
provarray2[4]=a
provarray2[5]=5
array_reverse con chiavi originali:
provarray3[5]=c
provarray3[4]=r
provarray3[3]=1
provarray3[2]=7
provarray3[1]=a
provarray3[0]=5