Как обрабатывать файлы размером 90 Мб ?

evgkuz

Новичок
Как обрабатывать файлы размером 90 Мб ?

Как обрабатывать файлы размером 90 Мб ?

Мне нужно выбрать определённую информацию из текстового файла размером 90 Мб.
Я пробовал использовать функцию «file()», но она нормально работает только с файлами порядка 10 Мб (время выполнения около 1 минуты).
Как только я взял файл размером 90 Мб, Апач на долго задумался, и так ничего и не выдал. Я ждал около часа.

Может есть ограничения на количество элементов массива?

Есть ли какие-нибудь специальные методы (функции) для обработки больших файлов?

Может лучше использовать для этого «Perl»?

Конфигурация:
PHP Version 4.3.4
max_execution_time = 3600
max_input_time = 7200
memory_limit = 100M
 

Crazy

Developer
Их и на PHP нет. Но идея выполнять такую работу при запуске через web -- странна.
 

valager

Guest
я пробовал на 30 мегабайтах. Работает. Нужно просто читать построчно,а не сразу в массив:

$fp=fopen("bigfile.dat","r");
while (!feof($fp))
{
$arr[count($arr)]=fgets($fp);
};
 
Сверху