Salve ragazzi. Un gran bel problema quello che mi si è appena presentato. Passo a spiegare senza perdere tempo.

Ho un array multidimensionale così composto:
Codice PHP:
$_target[0]['name'] = 'Uomo';
$_target[0]['id'] = 0;
$_target[1]['name'] = 'Donna';
$_target[1]['id'] = 1;
$_target[2]['name'] = 'Unisex';
$_target[2]['id'] = 2;
$_target[3]['name'] = 'Bambino';
$_target[3]['id'] = 3
Ho usato questo come esempio ma in realtà l'array è formato dalla coppia id - nome estratti da un db (quindi non mi dite di cambiare la struttura).

Il problema è questo: quando vado a costruire il modulo utilizzo un menu select formato in questo modo:
<select name="target">
<option value = "$target[$i]['id']">$target[$i]['name']</option>
</select>

Ora succede che nel momento in cui vado a riepilogare i dati inseriti stampando il valore della variabile $_POST['target'] mi viene stampato l'id e non il nome. Domandona: Come faccio a ricavare il nome? In un array così semplice potrei benissimo fare qualcosa del genere

Codice PHP:
for ($i $i count($target) ; $i++ )
   {
      if (
$target[$i]['id'] == $_POST['target'])
        {
           
$targetID $target[$i]['id'];
           
$targetName $target[$i]['name'];
        }
   } 
Questa soluzione, però, mi sembra poco elegante ed inoltre dispendiosa su grandi array. Soluzioni? Grazie mille! Ciao!