Пропускать строки, используя file_get_contents?

Я пытаюсь пропустить первые 2 строки (из чтения 3 файлов), а затем сохранить обратно (я уже сделал это, все, что осталось, это пропуск строки)

Есть какой-либо способ сделать это?

4 ответа

Решение

Это один из способов сделать это. Возможно, это немного излишне, поскольку это не очень эффективно. (с помощью file() будет намного быстрее)

$content = file_get_contents($filename);
$lines = explode("\n", $content);
$skipped_content = implode("\n", array_slice($lines, 2));

Да, но с использованием file_get_contents это было бы слишком сложно. Я советую использовать file() функция вместо:

$file_array = file("yourfile.txt");
unset($file_array[0]);
unset($file_array[1]);
file_put_contents("outfile.txt", implode("", $file_array));

Используйте file(), затем сбросьте первые 2 ключа массива, затем взорвитесь

Если строки не очень длинные, вы не можете просто использовать регулярные выражения для чтения файлов? Из руководства по php есть параметр смещения в file_get_contents, хотя это, скорее всего, не будет полезным, так как тогда вам нужно заранее знать длину строки. Может быть, file_get_contents не является подходящей функцией для использования в этом случае?

Другие вопросы по тегам