0

如果我这样使用生成HTML数据:MySQLPHP

/* SQL query */

while ($result = mysql_fetch_object($sql_query) {
   $text = $result->table_text;
}

如果我得到 aecho的结果,textarea我会得到用户在之前输入的正确换行符<form>。例如

代码:

<textarea>$text</textarea>

结果:

These
are
row breaks

但是,如果我echo将结果<div>归结为一条线。代码:

<div>$text</div>

结果:

These are row breaks

如果我在命令行中运行查询,它似乎是输出换行符。但是如何在 div 中生成它们?

4

2 回答 2

1

使用nl2br函数

echo nl2br($text);
于 2013-01-02T13:30:44.803 回答
1

那是因为直接显示在 div 标签中时"\n"还是"\r\n"没有效果。你可以:

  • 使用 csswhite-space将该 div 的属性设置为pre或类似的东西来实现你想要的。
  • <pre>将标签包裹在$text.
  • 首先使用 PHPnl2br()将行字符转换为 html
    标签。

这是你的选择。

于 2013-01-02T13:32:48.857 回答