You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用TinyMCE正确显示MySQL存储的带格式内容?

嘿,这个问题我碰过好多次了,其实根源很简单:你数据库里存的是HTML实体转义后的内容(比如把<转成了&lt;,>转成了&gt;),直接用echo输出的话,浏览器会把这些转义字符当成普通文本显示,而不是解析成HTML标签,自然就丢失格式了。

解决方法也很直接,只需要把转义后的实体转回成原生HTML标签就行,PHP里专门有个函数干这个——htmlspecialchars_decode()。

举个实际的代码例子:

// 假设你从数据库取出的内容存在$saved_content变量里
$display_content = htmlspecialchars_decode($saved_content);
echo $display_content;

拿你给出的示例内容来说,数据库里的:

&lt;p&gt;&amp;nbsp;&lt;strong&gt;TEST&lt;/strong&gt;&lt;/p&gt; &lt;h1&gt;TEst&lt;/h1&gt;

经过htmlspecialchars_decode()处理后,会变成:

<p>&nbsp;<strong>TEST</strong></p> <h1>TEst</h1>

这时再echo,浏览器就能正确识别<strong>、<h1>这些标签,显示出原本的粗体、标题格式了。

另外提一句,如果你的内容是来自用户输入,要注意防范XSS攻击。不过既然用了TinyMCE,它本身已经做了基础的过滤,但如果需要更严格的安全保障,可以考虑用HTML Purifier这类工具先净化内容,再解码显示。

内容的提问来源于stack exchange,提问作者Omkar Patil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:31:39