PHP回显HTML标记

PHP回显HTML标记,php,html,tags,Php,Html,Tags,我对一些文本区域的东西有问题。我使用文本区域将文本插入数据库,如 <textarea id="e1" name="content"></textarea> 当我查看该页面时,标记可见。 例如: 我将其提交到文本区域 Hello, This is text. Best Rergards, Testificus 它由我的php代码处理,然后回显到文本区域。当它被回显到文本区域时,它以以下形式出现: Hello,<br />This is text.<br

我对一些文本区域的东西有问题。我使用文本区域将文本插入数据库,如

<textarea id="e1" name="content"></textarea>
当我查看该页面时,

标记可见。
例如:
我将其提交到文本区域

Hello,
This is text.
Best Rergards,
Testificus
它由我的php代码处理,然后回显到文本区域。当它被回显到文本区域时,它以以下形式出现:

Hello,<br />This is text.<br />Best Regards,<br />Testificus
您好,
这是文本。
向您问好,
特西菲库斯

有没有办法让文本看起来像以前那样,而不是以文本的形式出现,而使用

标记?感谢您的帮助,如果不清楚我的意思,请告诉我。

我不确定它是否有效,但

&#10; 

代替换行符应该可以工作。

我说得对吗,您想用

标记替换换行符吗?为什么不直接使用
nl2br()

如果您想继续使用您的示例,您必须使用:


$replace=“
\r\n”

您可以将
\r\n
保留在数据库中,然后当您想要输出为html时,只需通过
nl2br()
运行文本,它为

元素交换新行。如果这样做,就不必担心额外的转换,只在需要时执行一次。

替换代码

$str     = $_POST['content'];
$order   = array("\r\n", "\n", "\r");
$replace = '<br />';
$content = mysql_real_escape_string(str_replace($order, $replace, $str));

出于兴趣,我该怎么做?它做了什么?将其更改为$replace=' ;';尝试使用Remove str_replace($order,$replace,$str)。mysql\u real\u escape\u string就足够了。@dfsq str\u replace是将/n标记转换为
标记(当文本稍后以html形式通过电子邮件发送出去时)@Dinesh,它似乎只是取出标记,将所有内容保持在一行不变。
&#10; 
$str     = $_POST['content'];
$order   = array("\r\n", "\n", "\r");
$replace = '<br />';
$content = mysql_real_escape_string(str_replace($order, $replace, $str));
$str     = $_POST['content'];
$content = mysql_real_escape_string(nl2br($str));