我想从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
答案 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);