php处理提交字符串的函数,php处理http传入的参数,php处理接收的参数,彻底杜绝各种攻击

 
更多

php处理提交字符串的函数,彻底杜绝各种攻击。

/**
 * 字符串处理,主要处理html字符
 * @param string $str
 * @param bool $flip 处理http提交参数使用false,从数据库读出来展示到页面使用true
 * @return string
 */
function doStr($str, $flip = false): string {
    if (!$str) {
        return $str;
    }

    if ($flip) { // 从数据库读出来显示到页面上
        $str = htmlspecialchars_decode($str, ENT_QUOTES | ENT_HTML5);
        $str = stripslashes($str);
    } else { // 提交数据保存到数据库的时候
        $str = addslashes($str);
        $str = htmlspecialchars($str, ENT_QUOTES | ENT_HTML5, 'UTF-8');
    }

    return $str;
}

以下是老版本代码。

/**
 * 字符串处理,主要处理html字符
 * @param string $str
 * @param bool $flip 处理http提交参数使用false,从数据库读出来展示到页面使用true
 * @return string
 */
function doStr($str, $flip = false) {
    if (!$str) {
        return $str;
    }

    if ($flip) {//当从数据库读出来显示到页面上的时候
        $str = htmlspecialchars_decode($str);

        if (version_compare(PHP_VERSION, '7.2.34', '<')) {
            !get_magic_quotes_gpc() && $str = stripslashes($str);
        } else {
            $str = stripslashes($str);
        }
    } else {//提交数据保存到数据库的时候
        if (version_compare(PHP_VERSION, '7.2.34', '<')) {
            !get_magic_quotes_gpc() && $str = addslashes($str);
        } else {
            $str = addslashes($str);
        }

        $str = htmlspecialchars($str);
    }

    return $str;
}
打赏

本文固定链接: https://www.cxy163.net/archives/2923 | 绝缘体

该日志由 绝缘体.. 于 2024年09月26日 发表在 未分类 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: php处理提交字符串的函数,php处理http传入的参数,php处理接收的参数,彻底杜绝各种攻击 | 绝缘体
关键字: , , , ,

php处理提交字符串的函数,php处理http传入的参数,php处理接收的参数,彻底杜绝各种攻击:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter