у меня код читает файл в массив потом вызывает array_slice($file, $i*$potokov_za_raz, $potokov_za_raz) то есть берет с заданного места в файле заданное количество строк!! Это работает если файл маленький. если файл большой он не загружается в память, ка переписать этот код что бы можно было работать с файлом в 100мб ??? я думаю как то заменить на file_get_contents('file.txt', NULL, NULL, ((1*$n)-1), (11*$n)); Помогите пожалуйста!
Погугли по теме класса итератора, он позволяет не расходуя память (не забивая весь файл в память) получать нужные элементы. http://php.net/manual/ru/language.oop5.iterations.php http://php.net/manual/ru/spl.iterators.php И насколько я знаю file_get_contents это потоковая (steam) функция http://php.net/manual/ru/book.stream.php - в win системе они открываются как MemoryMap - тобишь загружаются в память не целиком, а выделенными блоками - что позволяет быстро работать с гигабайтными файлами проецируя в память лишь их часть, необходимую для работы.