如果我使用PHP从MySQL生成HTML数据,如下所示:
/* SQL query */
while ($result = mysql_fetch_object($sql_query) {
$text = $result->table_text;
}如果我将结果echo到一个textarea,我会得到用户在之前的<form>中输入的正确的换行符。例如
代码:
<textarea>$text</textarea>结果:
These
are
row breaks但是如果我将结果echo到<div>,所有的结果都只有一行。代码:
<div>$text</div>结果:
These are row breaks如果我在命令行中运行查询,它似乎会输出换行符。但是如何在div中生成它们呢?
发布于 2013-01-02 21:30:45
使用nl2br函数
echo nl2br($text);发布于 2013-01-02 21:32:49
这是因为"\n"或"\r\n"在直接显示在div标记中时不起作用。您可以:
$text.white-space属性设置为pre或类似的值,以实现您想要的效果。<pre>标记包装在div周围首先使用nl2br()将行字符转换为html标签。
是你的选择。
https://stackoverflow.com/questions/14122963
复制相似问题