Лучший способ прочитать средние строки большого файла .log за период, используя переполнение стека

У меня есть файлы журналов более 10 ГБ. каждая строка файла начинается с даты и времени, как

2014-12-12 18:17:56 xxxxxxxxxxxxxxxxxxxxxxxxxx
2014-12-12 18:17:57 xxxxxxxxxxxxxxxxxxxxxxxxxx
2014-12-12 18:17:58 xxxxxxxxxxxxxxxxxxxxxxxxxx

2014-12-21 18:17:57 xxxxxxxxxxxxxxxxxxxxxxxxxx
2014-12-21 18:17:57 xxxxxxxxxxxxxxxxxxxxxxxxxx
2014-12-21 18:17:58 xxxxxxxxxxxxxxxxxxxxxxxxxx
2014-12-21 18:17:59 xxxxxxxxxxxxxxxxxxxxxxxxxx

Я хочу читать и просматривать журналы за период
пример от даты начала времени (2014-12-12 18:17:57) до даты окончания времени (2014-12-21 18:17:58)

Я могу разбить файл на массив и выполнить задачу, но мне нужно лучшее решение с меньшим использованием памяти.

Пожалуйста, помогите мне в этом

заранее спасибо

2

Решение

4096 размер в байтах для загрузки в память
Пример:

<php
$handle = fopen("/logfile.log", "r") or die("Couldn't get handle");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
//Process buffer here..
}
fclose($handle);
}

?>

Чтение очень больших файлов в PHP

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]