se è così sembrerebbe coretto.. cosa succede? non stampa nulla?
ti consiglio di mettere degli echo in più:
- subito dopo foreach qlcs come echo "PAROLA '$parola'
";

- dopo l'altro foreach echo $lett.' '.$numero[$i]"
";


...e vedere un po'... naturalmente prova con un file "piccolo" (due parole) per iniziare

Un'altra cosa... verifica che nel file ad ogni parola non corrispondano caratteri extra, p.es. un "\r\n" finale in ciascuna