У меня есть довольно большой файл .txt (~ 220 Мб), и мне нужно прочитать его на 100 строк (\ n символьных) кусков (например). Как я могу это сделать с помощью php?Как читать большой файл на 100 строк?
спасибо.
У меня есть довольно большой файл .txt (~ 220 Мб), и мне нужно прочитать его на 100 строк (\ n символьных) кусков (например). Как я могу это сделать с помощью php?Как читать большой файл на 100 строк?
спасибо.
fopen
и fgets
. В файле fgets manual page приведен пример чтения файла по строке, без необходимости загрузки его в память.
$fp = open('big_text_file.txt',"r");
if($fp){
$c = 0;
$data = array();
while(!feof($fp)){
if($c == 100){
$c = 0;
// Do whatever it is you want here
unset($data);
$data = array();
}
$data[] = fgets($fp,4096);
$c++;
}
if($c > 0){
// Do whatever you need to again
}
fclose($fp);
}
Возможный дубликат [Как открыть файл из строки X в строку Y в PHP?] (Http://stackoverflow.com/questions/514673/how-do-i-open-a-file -из-линия-х-к-линии-у-в-РНР) – Gordon