Используя:
$fh = fopen('file.log', 'r');
while(!feof($fh)) {
$string = fgets($fh); //получаем одну строчку с файла
}
Так вы будете читать файл построчно, оперативную память это почти будет не занимать, если вы, конечно же, не будете весь файл хранить в памяти, а только работать с ним построчно.
Ну и не лишним напомнить о возможной необходимости блокировки файла на всякий случай и т.д.