我在MySQL
表中有数据,我正在使用简单的SQL
选择查询在PHP
网页上显示。它运行良好,并通过数据库中的HTML格式正确显示数据。
然而,由于HTML从数据库中被回显,它会影响网页上的其他HTML
元素,我如何仍然用HTML格式回显数据库数据,但阻止它更改其他硬编码元素的样式?
我们不知道这里的所有情况,但这也是您应该尽量避免在数据库中存储html的原因之一。这里基本上有三个四个选项:
- 重构数据库逻辑,只存储数据并动态生成HTML
- 按照其中一条注释中的建议使用框架(不会删除现有样式,但不会影响页面上的其他HTML)
- 使用某种HTML/DOM解析库,并尝试删除所有与样式相关的HTML属性
- 如果你只需要文本内容,你可以查看http://php.net/manual/en/function.strip-tags.php
如果您想将html打印为文本,可以使用htmlspecialchars:
htmlspecialchars('<strong>something</strong>')
有关更多信息,请参阅此答案:如何将HTML标记显示为纯文本