我正在用文本文件创建一个聊天室。很简单,但我不希望它给服务器带来阻碍。无论如何。当我尝试发送消息时,它会将附加消息放在同一行,如下所示
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";
^-- ^--
单引号字符串不会解释像换行符/换行符这样的元字符,并且单引号版本所做的只是将文字
r
和 n
字符放入输出中。
尝试在最后使用
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
]);
?>