我正在尝试显示一个文本块,其中包含从MySQL数据库中检索的空格,换行符等。数据使用换行符保存在数据库中。但是当它显示在php页面中时,不会显示新行。所有文字都在一行中。 请帮忙。 提前谢谢。
显示db:
文本块的代码 <?php if (isset($row['Description'])) {?>
<p>Description :</p> <?=$row['Description'] ?>
<?php } ?>
如果说明在DB中保存为:
"First line text
Second line text
Third line text."
它在网页中显示为:
"First line text Second line text Third line text."
我希望结果为:
"First line text
Second line text
Third line text."
答案 0 :(得分:10)
PHP nl2br()
函数是你的朋友!
<?php
if (isset($row['Description']))
{
echo '<p>Description :</p>';
echo nl2br($row['Description']);
}
?>
答案 1 :(得分:3)
nl2br()
:<?php if (isset($row['Description'])) {?>
<p>Description :</p> <?=nl2br($row['Description']); ?>
<?php } ?>
答案 2 :(得分:0)
您的问题是HTML会自动折叠空白字符。您需要在HTML中实际输出<br>
标记以强制换行。
为此,您可以使用nl2br()
功能运行数据库,将换行符转换为<br>
标记。
所以像这样使用它:
echo nl2br($your_database_content);