编辑器里输入的提交后,输出时,带有<br>

查看表中,都是实体。

解决办法:在输出前将内容转换即可。

htmlspecialchars_decode()

需要再详细,请阅读如下:

在 ThinkPHP 3.2.2 中使用 UEditor 编辑器保存文章内容时,数据库中保存的数据都被转义成实体,例如:&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;&amp;lt;span style=&amp;quot;font-family: 微软雅黑, &amp;amp;#39;Microsoft YaHei&amp;amp;#39;; color: rgb(192, 0, 0);&amp;quot;&amp;gt;&amp;lt;em&amp;gt;&amp;lt;span style=&amp;quot;font-family: 微软雅黑, &amp;amp;#39;Microsoft YaHei&amp;amp;#39;; text-decoration: underline;&amp;quot;&amp;gt;fonts&amp;lt;/span&amp;gt;&amp;lt;/em&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/strong&amp;gt;&amp;lt;/p&amp;gt;

如图:

详解html实体转换UEditor编辑器方法-LMLPHP

那么如果准备在后台编辑已经保存过的数据时,如果不做相应的处理,编辑框内则会出现:

详解html实体转换UEditor编辑器方法-LMLPHP

只需要在取出数据时进行相应的处理:

$con['content'] = htmlspecialchars_decode(html_entity_decode($con['content']));

则编辑框内能正确显示保存的数据:

详解html实体转换UEditor编辑器方法-LMLPHP

附:

html_entity_decode():把 HTML 实体转换为字符,是 htmlentities() 的反函数。

htmlspecialchars_decode(): 把一些预定义的 HTML 实体转换为字符。

如果是 <textarea> 未经处理存入数据库的 html 代码,取出时只需要使用 htmlspecialchars_decode() 函数。


以上就是详解html实体转换UEditor编辑器方法的详细内容,更多请关注Work网其它相关文章!

08-29 05:33