fopen($filename, "a+") 和 file_put_contents($filename, = $data.PHP_EOL, FILE_APPEND) 似乎附加到文件

fopen($filename, "a+") nor file_put_contents($filename, = $data.PHP_EOL, FILE_APPEND) seem to append to file

正在尝试附加文件:

file_put_contents($filename, "\r\n" . $barcode_number.PHP_EOL, FILE_APPEND);

$myfile = fopen($filename, 'a+');

既不附加我的文件。两者都在覆盖旧信息
我尝试过的东西在代码注释中

    $myfile = fopen($filename, 'a+') or die("unable to open file" . $filename);

    $barcode_number = $_POST['SBN'];
    //$newLine = PHP_EOL; 
    //echo  $temp.$barcode_number; die();

    fwrite($myfile, $barcode_number.PHP_EOL);
    fwrite($myfile, "\n");

    //file_put_contents($filename, "\r\n" . $barcode_number.PHP_EOL, FILE_APPEND);
    fclose($myfile);
    //echo "wrote " . $barcode_number . "to " . $filename; die();

预期输出为:

123456
123457
123458

实际输出为:

123458

您的 file_put_contents() 调用格式正确,但我认为您不需要 .PHP_EOL,因为您已经在数据前添加了“\r\n”。你的 fopen()/fwrite()/fclose() 也是。是否有可能另一个脚本正在打开此文件,从而锁定文件?