Ordinare cosa in ordine alfabetico rispetto a cosa?
Andando un po' ad occhio in base al codice che hai scritto, credo ti convenga ristrutturarlo in modo da avere una struttura dati intermedia nella forma:
Codice PHP:
$item = [
'nome' => ...,
'cognome' => ...,
'iscrizione' => ...,
'punti' => ...
];
utilizzando la quale diventa molto più semplice effettuare gli ordinamenti e le stampe di cui hai bisogno. La puoi costruire così:
Codice PHP:
$risultato = file("auto.txt");
$data = [];
foreach ($risultato as $record) {
$componenti = explode("|", $record);
$data[] = [
'nome' => $componenti[0],
'cognome' => $componenti[1],
'iscrizione' => $componenti[2],
'punti' => $componenti[3]
];
}
Ora, per ordinarla in ordine alfabetico rispetto a <nome cognome>, per esempio, puoi usare
Codice PHP:
usort($data), function ($a, $b) {
return strcmp($a['nome'] . $a['cognome'], $b['nome'] . $b['cognome']);
}
E la stampa diventa:
Codice PHP:
foreach ($data as $record) {
echo "Nome: " . $record['nome'] . "<br/>"
. "Cognome: " . $record['cognome'] . "<br/>"
. "Iscrizione: " . $record['iscrizione'] . "<br/>"
. "Punti: " . $record['punti'] . "<br/><br/>";
}