1

我尝试使用以下代码更新文本文件:

$filename = "flat-file-data.txt"; // File which holds all data
$rowToUpdate = $_REQUEST['number']; // This is line need to be updated
$newString = $_REQUEST['line'].'\r\n'; // This is what you want to replace it with

$arrFp = file( $filename ); // Open the data file as an array
// Replace the current element in array which needs to be updated with new string
$arrFp[$rowToUpdate-1] = $newString; 
$numLines = count( $arrFp ); // Count the elements in the array

$fp = fopen( $filename, "w" ); // Open the file for writing
for($i=0; $i < $numLines; $i++)
{
    fwrite($fp, $arrFp[$i]);
}
fclose( $fp ); // Close the file

从上面的代码中可以看出,它将使用 $newString 中的数据更新第 1 行,并且它应该能够在每行之后用这个 '\r\n' 创建一个新行。

不幸的是,它不会创建新行,它只是与同一行或当前行一起使用,例如“这是第一行\r\n这是第二行”。有什么准确的方法可以让我在一个新的行中做到这一点

this is the firstline
this is the secondline

等等等等?

4

1 回答 1

1

你必须加上\r\n双引号:

$newString = $_REQUEST['line']."\r\n";
于 2013-07-27T21:38:58.927 回答