Perché tutte quelle righe di codice quando potresti usare file_get_contents() ?

Comunque, è molto strano ciò che ti accade: da quel che vedo, usi file() per creare un array con tanti elementi quante sono le righe del file, poi le leggi una volta alla volta e concateni semplicemente.

Sicuro che si blocca in concomitanza di quei caratteri e non dei fine riga?

Alberto