【发布时间】:2014-08-20 20:40:10
【问题描述】:
当我使用 php echo 语句将包含多个 cr lf 字符对的变量(甚至是字符串文字)分配给空的 div 或 p 元素时,cr lf 将被单个空格字符(0x20)替换,因此新行格式丢失。尽管元素确实将文本换行,但文本显示为一长行。
通过查看显示的文本,cr lf 似乎消失了。我通过将显示的文本复制粘贴到十六进制编辑器来验证这一点。如何告诉 php 在文本文件中保留 cr lf 字符?这是分配代码:
echo "<div class='showBox'><p> $content </p></div>";
无论有没有封闭的 p 元素,这具有相同的结果。
【问题讨论】:
-
这不是 php 的问题,它是 HTML 在浏览器中的呈现方式。这也是
<pre>的一般用途。 -
刚刚再次检查,发现 cr lf 对没有被 cr lf 替换。正如预期的那样,它已经在文本中了。但是当然 cr lf 还是不见了。
-
@hcoat 当然,但是,“我如何告诉 php 在文本文件中保留 cr lf 字符?”如果他在 $content 中插入一个 NewLine,他就不必担心 HTML 是如何呈现的
-
是的。将 $content 包含在
标记中就可以了。我一直不太确定那些是干什么用的。现在我明白了。谢谢。