我想解析一個大小約爲1GB的製表符分隔文件。讀取和分析非常大的文件的內容
當我運行該腳本,我得到:
Fatal error: Allowed memory size of 1895825408 bytes exhausted (tried to allocate 1029206974 bytes) ...
我此刻的腳本就是:
$file = file_get_contents('allCountries.txt') ;
$file = str_replace(array("\r\n", "\t"), array("[NEW*LINE]", "[tAbul*Ator]"), $file) ;
我已經設置php.ini中的內存限制爲-1,然後給我:
Fatal error: Out of memory (allocated 1029963776) (tried to allocate 1029206974 bytes)
反正是有部分打開該文件,然後使更少的內存用完移動到下一部分一次?
爲什麼不逐行處理文件? – 2013-02-13 08:04:26