我尝试使用以下代码更新文本文件:
$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
等等等等?