没有过滤(不过滤是什么意思)

lxf2023-08-28 15:00:01

Thinkphp不过滤html标签:1。打开相应的tp文件;2、通过“strip _ tags(htmlspecialchars _ decode($data[& # 39;邮政& # 39;]['post _ content & # 39]));"方法来反转转换后的实体。

没有过滤(不过滤是什么意思)

本教程运行环境:Windows7系统,ThinkPHP5版本5,Dell G3电脑。

ThinkPHP不过滤html标签怎么办?

TP5使用strip_tags过滤html标签的解决方案行不通

ThinkPHP5中使用strip_tags过滤html标签的解决方案行不通。

在保存文章的过程中,需要获取Uediter编辑器编辑的html内容中的文本。基本思路是用PHP自带的函数strip_tags()直接过滤。

所以直接编辑如下:

$data = $this->request->param(); $data['post']['content'] = strip_tags($data['post']['post_content']); echo $data['post']['post_content']; echo $data['post']['content'];

输出如下,strip_tags()函数不起作用:

<p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p> <p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p>

查看TP5手册——输入变量——变量过滤章节,可以发现TP5默认将前端传递的字符串转换为HTML实体。因此,我的解决方案是通过使用htmlspecialchars _ DECODE()函数来反转转换后的实体。

$data = $this->request->param(); $data['post']['content'] = strip_tags(htmlspecialchars_decode($data['post']['post_content'])); echo $data['post']['post_content']; echo $data['post']['content'];

输出如下,转换成功:

<p>RWERWERWhgj<strong>ghhfhgn</strong>bfghgh</p> RWERWERWhgjghhfhgnbfghgh

推荐学习:thinkPHP视频教程

以上是thinkphp不过滤html标签的细节。更多详情请关注AdminJS.cn其他相关文章!

adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!