fgets($this->fp,256) здесь увеличь размер данных для считывания, скажем
fgets($this->fp,10000000)
>Может такое быть чтоб в файле небыло символа EOF?
Учитывая увеличивающиеся размеры жестких дисков, можно в плотную подойти к проблеме величины файлов, стремящейся к бесконечности. Соответственно и символ EOF может оказаться для нас на нерационально далеком расстоянии, что затруднит нам его скорое обнаружение и локализацию.