我有一个功能,可以让网站上的成员互相发送消息;消息存储在MySQL数据库中。当一个成员向另一个成员发送消息时,我想保留消息的自然流,即带有空格和段落等。但是,当消息存储在MySQL中时,这些被删除。
我知道有一个PHP函数允许这种情况发生,但我不确定它是什么。以下是我所指的一个例子。我希望它能更清楚地了解我的意思。
示例消息:
dear Tom
thank you for contacting me.
the details are here.
上面的示例有3条带有空格的单独行。但是,它在MySQL表中呈现如下:
dear Tom thank you for contacting me. my details are below.
有人可以告诉我PHP的功能是什么,它可以自然呈现,但仍然可以逃避不需要的值。
答案 0 :(得分:0)
nl2br
正是您要找的。
但是在插入数据库之前不要使用它。在表示层中使用它。
数据库将包含用户输入的消息。然后您可以选择以后如何显示它。
使用<br>
代码:
<p class="message"><?=nl2br($message)?></p>
或者将来您可能希望使用<pre>
代码:
<pre><?=$message?></pre>
请注意nl2br
中没有pre
的来电。我知道你暂时不想在pre
标签中显示它,我只是用它来证明这一点。