PHP 文件使用换行符写入


PHP file write with a new line

我正在用文本文件制作一个聊天室。非常简单,但我不希望它对服务器造成阻碍。无论如何。当我尝试发送消息时,它会像这样将附加的消息放在同一行上

Alan,5/6/12,message<br>Joe,5/6/12,hello<br>

我希望它是

Alan,5/6/12,message
Joe,5/6/12,hello

这就是我所拥有的。

$total = 'Alan,5/6/12,hello joe<br>'r'n';
$fn = "messages.txt";
$file = fopen($fn,"a");
fwrite($fn,$total);
fclose($fn);

谢谢。

$total = 'Alan,5/6/12,hello joe<br>'r'n';

如果您使用双引号会起作用,例如

$total = "Alan,5/6/12,hello joe<br>'r'n";
         ^--                           ^--
单引号

字符串不会解释换行符/换行符等元字符,而单引号版本所做的只是将文字rn字符放入输出中。

最后尝试使用 PHP_EOL

$total = 'Alan,5/6/12,hello joe<br>' . PHP_EOL;

由于看起来您正在编写CSV,因此您可以更轻松地执行此操作:

<? //PHP 5.4+
(new 'SplFileObject('messages.txt', 'a'))->fputcsv([
  'Alan',  //or $user
  'date('c'), //or other date format
  'message content', //or $message_content
]);
?>