我已经使用ckeditor对textarea框进行了整合,每次我在后端按Enter键以获得新行,它在前端输出<br>
,有没有办法删除<br>
前端,因为我不希望前端的html标签输出
我的代码行如下所示
echo "<strong>Sites Linked Out To</strong>: " . $row->sites_linked_out_to;
有没有办法在将html <br>
标记添加到数据库之前或之后删除它?
提前谢谢
答案 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>');
的更多信息
答案 2 :(得分:0)
我知道我来晚了,但这可能会帮助某人。
使用
htmlspecialchars_decode($your_string);