1

我在数据库中格式化了 HTML 标签(<成为&lt;等)。

我遇到的问题是 HTML 标签是按字面输出的;而不是<b>Text</b>使文本加粗,而是显示为&lt;b&gt;

有人知道这是为什么吗?或者请问如何解决?

网站上的输出: 网站

数据库中的 HTML 代码: 数据库中数据的部分图像。

4

3 回答 3

3

采用html_entity_decode()

echo html_entity_decode("&lt;b&gt;"); // <b>
于 2012-08-08T01:57:08.800 回答
1

我认为您打算在将 HTML 存储在数据库中时<用等替换所有内容。&lt;但我发现在你的数据库中,<script ...标签看起来像&amp;lt;script .... 尝试用类似的东西替换它&lt;script ...。还要确保设置了正确的 MIME 类型。对于 HTML 页面,使用:

header('Content-type: text/html');
于 2012-08-08T04:54:26.970 回答
0

与其进行解码,不如确保您没有对它进行双重编码。如果您在数据库中对数据进行了编码,然后在打印出来时再次对其进行编码,则应将其呈现为 < 等。

于 2012-08-08T06:26:48.110 回答