我正在收集textarea的文字。文本中有换行符。然后我将其保存到数据库中。
然而,当我从数据库中检索它并将其显示回textarea进行编辑时,换行符就会消失,文本会变成一个长连续字符串。
我希望那里的换行重新出现。如何在插回textarea时将换行符显示为什么?
注意:我无法将它们转换为<br>
,因为这会在textarea 中显示 {{1}元素不会被渲染,而只是写成文本。我想要实际的换行符。
答案 0 :(得分:5)
每个人都建议将换行符转换为<br />
,但正如您在问题中所说,这不是您想要的。您想再次在textarea中显示换行符。所以,你需要的是stripcslashes()
- 这将删除\n
并给你你所追求的,在你的textarea中换行,而不是textarea中的html <br />
标签:
PHP:stripcslashes
用法:
echo stripcslashes($input_text);
答案 1 :(得分:0)
您可以使用以下内容:
echo nl2br($someText);
答案 2 :(得分:-1)
这是我在处理这类问题时通常所做的事情:
在显示数据时,将每个换行符转换为<br />
:
echo str_replace("\n", "<br />", $data);
使用此技术,您可以保留用户在textarea中使用的任何格式数据。
答案 3 :(得分:-1)
str_replace()
不是这样的:
echo str_replace($data, "\n", "<br />");
它是这样的:
str_replace("SEARCH_FOR","REPLACE_WITH",STRING);
从某种意义上说,SEARCH_FOR
是您要查找的内容,REPLACE_WITH
是您要替换的内容,STRING
是您正在使用的变量(例如$data
1}})。