尝试简单地替换一些新行。尝试了3种不同的方法,但我没有任何改变:
$description = preg_replace('/\r?\n|\r/','<br/>', $description); $description = str_replace(array("\r\n","\r","\n"),"<br/>", $description); $description = nl2br($description);
这些都应该起作用,但是我仍然可以换行。它们是双精度的:“ \ r \ r”。那不应该让这些失败吗?
已经有在换行符之前 替换 插入* 标签的[nl2br()]功能: ~~~~*<br>
nl2br()
<br>
示例(键盘):
<?php // Won't work $desc = 'Line one\nline two'; // Should work $desc2 = "Line one\nline two"; echo nl2br($desc); echo '<br/>'; echo nl2br($desc2); ?>
但是,如果仍然无法正常工作,请确保文本$desciption被双引号引起来。
$desciption
那是因为单引号不会“扩展”转义序列,例如\n与双引号字符串相比。引用PHP文档:
\n
注意 :与双引号和heredoc语法不同,特殊字符的变量和转义序列在单引号引起来的字符串中不会扩展。