buildadmin总结

  1. 关于filter函数过滤 会把非字符串类型(如 布尔型,整型)转为字符串类型的bug
/**
     * 修复后的输入过滤
     * 富文本反XSS请使用 clean_xss,也就不需要及不能再 filter 了
     * @param string|bool|int $string 要过滤的字符串
     * @return string|bool|int
     */
    function filter(string|bool|int $string): string|bool|int
    {
        if (!is_string($string)) return $string;

        // 去除字符串两端空格(对防代码注入有一定作用)
        $string = trim($string);

        // 过滤html和php标签
        $string = strip_tags($string);

        // 特殊字符转实体
        return htmlspecialchars($string, ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, 'UTF-8');
    }
  1. 关于clean_xss函数过滤 会把非字符串类型(如 布尔型,整型)转为字符串类型的bug
/**
     *修复后的输入过滤
     * 清理XSS
     * 通常只用于富文本,比 filter 慢
     * @param string|int|bool $string
     * @return string|int|bool
     */
    function clean_xss(string|int|bool $string): string|int|bool
    {
        if (!is_string($string)) return $string;
        return (new AntiXSS())->xss_clean($string);
    }
posted @ 2024-12-08 12:02  狂客  阅读(3)  评论(0编辑  收藏  举报