删除ckeditor输出上的标签

时间:2016-10-26 14:27:23

标签: php mysql ckeditor

我已经使用ckeditor对textarea框进行了整合,每次我在后端按Enter键以获得新行,它在前端输出<br>,有没有办法删除<br>前端,因为我不希望前端的html标签输出

我的代码行如下所示

echo "<strong>Sites Linked Out To</strong>: " . $row->sites_linked_out_to;

有没有办法在将html <br>标记添加到数据库之前或之后删除它?

提前谢谢

3 个答案:

答案 0 :(得分:0)

您可以在插入内容时致电nl2br()

这会将所有<br>替换为新行\n

但请注意;如果你实际上看到的标签可能是在某处编码的url。如果您在此编码发生之前调用nl2br(),它应该可以正常工作。

您还可以使用strip_tags去除其他不需要的标记。在更换新线后执行此操作。

define('ALLOWED_TAGS', '<p>,<strong>,<ul>,<li>,<ol>,<em>');
$sContent = strip_tags( nl2br($sContent), ALLOWED_TAGS);

但请注意,这不会删除<a href='#' onclick='DO_SOMETHING_BAD'>click me</a>

您可以使用html净化器等库来清理输入。或者只是确保正确清理所有输出。

有关详细信息,请参阅nl2br()strip_tags

答案 1 :(得分:0)

php strip tags函数在标签中写入辅助参数,保持标签,其他html标签清洁

strip_tags($input, '<a><img><div><strong>');

有关条带标记功能http://php.net/manual/tr/function.strip-tags.php

的更多信息

答案 2 :(得分:0)

我知道我来晚了,但这可能会帮助某人。

使用

htmlspecialchars_decode($your_string);