Io avrei pensato a una soluzione del genere. Cmq secondo me ti complichi la vita gestendo le parole in questo modo.

Codice PHP:
$f_contents preg_split("/\s+/"implode(" "file("parole.txt")));

$quante sizeof($f_contents);

$casuale mt_rand(0,$quante-1);

echo 
"$f_contents[$casuale]"
Uff, il forum gli slash e i backslash li gestisce per conto proprio.
Prima della s ci vuole uno slash e poi un backslash.
preg_split("/\s eccetera