Ti crei un array con tot colori pari al numero massimo di nomi possibili.
Con array_slice tagli l'array di colori alla dimensione pari a quella dei nomi.
Poi se hai php 5 usi array_combine per fondere i due array e creare l'associazione. Se non hai php 5 nella pagina relativa a questa funzione ci sono esempi su come adattarla in php 4.
Codice PHP:
$colori = array('#FF0000','#0000FF','#00FF00','AA00EE','AAEE00');
$nomi = array('Antonio','Giuseppe','Stefano');
$primi = array_slice($colori,0,count($nomi));
$associa = array_combine($nomi,$primi);
echo '<pre>';
print_r($associa);