首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据从MySQL输出到HTML分多行,适用于textare,但不适用于<div>

问将数据从MySQL输出到HTML分多行,适用于textare,但不适用于<div>
EN

Stack Overflow用户
提问于 2013-01-02 21:28:38
回答 2查看 296关注 0票数 0

如果我使用PHP从MySQL生成HTML数据,如下所示:

代码语言:javascript
复制
/* SQL query */

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

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

代码:

代码语言:javascript
复制
<textarea>$text</textarea>

结果:

代码语言:javascript
复制
These
are
row breaks

但是如果我将结果echo到<div>,所有的结果都只有一行。代码:

代码语言:javascript
复制
<div>$text</div>

结果:

代码语言:javascript
复制
These are row breaks

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-02 21:30:45

使用nl2br函数

代码语言:javascript
复制
echo nl2br($text);
票数 1
EN

Stack Overflow用户

发布于 2013-01-02 21:32:49

这是因为"\n"或"\r\n"在直接显示在div标记中时不起作用。您可以:

  • 使用css将该$text.
  • use的white-space属性设置为pre或类似的值,以实现您想要的效果。
  • 将<pre>标记包装在div周围首先使用nl2br()将行字符转换为html

标签。

是你的选择。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14122963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档