我正在尝试将用户消息从textarea存储到文本文件中,以及用户的姓名和日期(尽管我们暂时忽略日期)。
让我们说名为John的用户将以下文本输入textarea:
Hello
How are you?
我希望文本文件将其存储为:
John#Hello\nHow are you?
我尝试过多种方法从textarea中删除/替换换行符,但是我在文本文件中得到的结果总是如下所示:
John#Hello
How are you?
我只是不能让它不去文件的下一行。我试过搜索,没有看到有人遇到这个问题...所以也许我不知道我在做什么。有人有解决方案吗?
答案 0 :(得分:5)
要使用文字\n
替换换行符,请使用str_replace
并将\n
放在单引号中,这样就不会将其解释为转义序列。
$text = str_replace("\n", '\n', $text);
file_put_contents("filename.txt", "$username#$text");
What is the difference between single-quoted and double-quoted strings in PHP?
或者,您可以转义反斜杠:"\\n"
答案 1 :(得分:-1)
使用preg_replace("#[\n\r]+#", '\\n', $text);