thinkphp不过滤html标签如何解决

   2023-02-07 学习力0
核心提示:这篇文章主要介绍“thinkphp不过滤html标签如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“thinkphp不过滤html标签如何解决”文章能帮助大家解决问题。thinkphp不过滤html标签的解决办法:1、打开相应的t

这篇文章主要介绍“thinkphp不过滤html标签如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“thinkphp不过滤html标签如何解决”文章能帮助大家解决问题。

thinkphp不过滤html标签的解决办法:1、打开相应的tp文件;2、通过“strip_tags(htmlspecialchars_decode($data['post']['post_content']));”方法对已经转换的实体进行反转即可。

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默认对前端传过来的字符串使用了htmlspecialchars转换为 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不过滤html标签如何解决”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注***行业资讯频道,小编每天都会为大家更新不同的知识点。

 
标签: thinkphp html
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • ThinkPHP报错 The requested URL /admin/index/login.html was not found on this server.
    ThinkPHP报错 The requested URL /admin/index/
           解决方案在入口文件夹public下查看.htaccess是否存在。不存在则新建,存在的话,那内容替换为下面这串代码 就可以解决Not Fund#IfModule mod_rewrite.c#Options +FollowSymlinks -Multiviews#RewriteEngine On##RewriteCond %{REQUEST_FILENAME
    03-08
  • 练手THINKPHP5过程和bootstrap3.3.7 thinkphp5
    1 在GIT上下载了最新版的源码,同时安装composer 用composer更新git地址https://github.com/top-think/think 2 搭建本地开发环境,开启url重写模块,记得配置默认网站的访问目录是public/index.php同时.htaccess 是在public目录下把如下代码复制到 .htaccess
    03-08
  • bootstrap ajax thinkphp5 tp5 serialize 序列
    注意加 return false  否则把提交按钮移到form外,不然会刷新页面  $('.list-active').each(function(key,val){ data[key] = $(this).text();});data.unshift($('#bespeak').val()); data.unshift($('#time_range').val()); data.unshift($('#gid').val()
    02-08
  • thinkphp前台使用JQuery跳转后台处理后回调
    thinkphp前台使用JQuery跳转后台处理后回调记录。前台htmlinput id="query" type="tel" value="" placeholder="搜索编号查询" autocomplete="off" name="q" size="27"a class="go"name="submit" onClick=
    02-08
点击排行