0

ファイルの各行にまったく同じテキストを追加したいのですが、作成できません。その理由は、1k 以上の行があり、これを手動で行うのは面倒だからです。私がこれまでに持っているのはこれです:

$file_data = "my string \n";
$file_data .= file_get_contents('numbers.txt');
file_put_contents('numbers.txt', $file_data);

これにより、テキスト ファイルの最初の行に文字列が配置され、それだけです。各ラインの付け方は?

4

2 に答える 2

2

これにより、新しいファイルが作成され、すべての行の前に文字列が書き込まれます。

<?php
$string = "my string \n";
$fh = fopen('numbers.txt', 'r');
$fh2 = fopen('new-numbers.txt', 'w');

if ($fh && $fh2) {
    while (($buffer = fgets($fh, 4096)) !== false) {
        $buffer = $string . $buffer;
        fwrite($fh2, $buffer);
    }

    if (!feof($fh)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($fh);
    fclose($fh2);
}
于 2016-08-26T12:58:52.993 に答える