PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通PHP建站技术分享-从入门到精通

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > Fastadmin

使用HTMLPurifier替换FastAdmin内置的过滤函数xss_clean

管理员 2024-12-14
Fastadmin
9

FastAdmin框架中有内置xss_clean过滤函数,如果在使用xss_clean不满足自己过滤的情况下,我们可以使用HTMLPurifier过滤器来替换掉xss_clean

准备工作

首先确保你使用的FastAdmin框架版本在1.3.0+以上版本,1.3.0以下的版本需要在命令行使用composer require ezyang/htmlpurifier安装HTMLPurifier依赖,1.3.0+以上版本无需执行安装依赖命令。

修改文件

找到application/common.php文件,大概第460行的xss_clean方法,在该方法前添加以下代码

/** * 清理XSS */function xss_clean($content, $is_image = false){    $config = HTMLPurifier_Config::createDefault();    $purifier = new HTMLPurifier($config);    $clean_html = $purifier->purify($content);    return $clean_html;}

添加后的代码截图如下:
image.png

注意这里添加的是xss_clean同名函数,也就是放在原有xss_clean函数定义之前。

使用方法

1、全局使用
全局使用需修改application/config.php文件大概第47行的default_filter的值,修改为

// 默认全局过滤方法 用逗号分隔多个'default_filter'         => 'xss_clean',

修改后如图:
image.png

2、单独使用

$content = $this->request->post("content", "", "trim,xss_clean");

单独使用时将忽略全局的过滤配置

温馨提示

更多HTMLPurifier使用方法请参考文档:https://htmlpurifier.org/docs


希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

QQ交谈

回顶部