一次$_REQUEST的count参数异常BUG排查

由于360的PHP开发使用的是QFrame框架,然后对参数进行安全过滤时候调用了

$count= $this->getParam('count');方法,而该方法调用了QFrame的QFrameHttp类。

说白了,我们除了$_GET $_POST外,$_REQUEST默认情况下包含了 $_GET$_POST 和 $_COOKIE 的数组。以后尽量少使用$_REQUEST


  /**
     * 带参数过滤功能的getParam,如果参数是数组,则递归过滤
     *
     * @param string    $key     参数名
     * @param multitype $default 默认值
     * @param boolean   $filter  是否过滤
     * @access public
     * @return mixed 参数变量值
     */
    public function getParam($key = null, $default = null, $filter = true)
    {
        $value = parent::getParam($key, $default);


        if ($filter) {
            $value = $this->filterParam($value);
        }


        return $value;
    }


/**
     * 过滤参数中的字符串,如果参数是数组,则递归过滤
     *
     * @param mixed $value 输入参数
     * @access public
     * @return mixed 过滤后的参数
     */
    public function filterParam($value)
    {
        if (is_string($value)) {
            $value = htmlspecialchars($value, ENT_QUOTES);
        } elseif (is_array($value)) {
            $items = array();


            foreach ($value as $index => $item) {
                $items[$index] = $this->filterParam($item);
            }


            $value = $items;
        }


        return $value;
    }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值