Задать вопрос
CartmanGui
@CartmanGui

Как работать с большим csv файлом?

Есть csv файл с большим количеством строк нужно реализовать возможность его обработки по частят т/к у шараварных хостеров время на выполнение php скрипта ограничено и из-за этого весь csv не успевает обработаться. Есть решение узнать количество строк разбить файл на n частей после чего через ajax дергать скрипт который бы считывал нужное количество строк но тут возникает проблема что каждый раз нужно открывать файл и в цикле пробегая по строкам пропускать уже ранее обработанные
$handle = fopen($file, "r");
$rows = 0;
while($csv = fgetcsv($handle)) {
		if($rows>= $stop) {
			break;
		}
		if($rows < $start) {
			$rows++;
			continue;
		}
		...
	}
	fclose($handle);


Конечно можно сразу разбить сам файл на n файлов и работать уже на каждой итерации с ним на может есть какое то более изящное решение?
  • Вопрос задан
  • 3018 просмотров
Подписаться 2 Оценить Комментировать
Ответ пользователя ivanovnickolay К ответам на вопрос (7)
@ivanovnickolay
stackoverflow.com/questions/14127529/mysql-import-...
Команда LOAD DATA INFILE читает строки из текстового файла и вставляет их в таблицу с очень высокой скоростью.
Ответ написан
Комментировать