PHP从文件中读取每3行并将其保存到另一个文件

时间:2017-07-22 02:40:16

标签: php

我想从file1读取每个第3行,并将其另存为新文件。

这是我正在尝试的,但它不起作用。有什么想法吗?

$myfile = file("file1.txt");
$lines = file($myFile);
$newFileContent= $lines[2];
file_put_contents("file2.txt", $newFileContent);

因此,如果file1.txt具有以下内容:

1
2
3
4
5
6

file2.txt应仅包含:

3
6

1 个答案:

答案 0 :(得分:1)

实际最简单的方法是使用普通的for循环。该数组是非关联的,因此在整个数组上使用昂贵的foreach是没有意义的。

要准确复制样本数据,只需使用以下内容:

$lines = file('file1.txt');

$newContent = '';

$len = count($lines); // saves us from calling count() on every iteration

for ($i = 2; $i < $len; $i += 3) {
    $newContent .= $lines[$i];
}

file_put_contents('file2.txt', $newContent);

Working demo