src/Common/Ali/Data/Charge/ChargeBaseData.php
protected function checkDataParam()
    {
        $subject = $this->subject;
        $orderNo = $this->order_no;
        $amount = $this->amount;
        $goodsType = $this->goods_type;
        $passBack = $this->return_param;

        // 检查 商品名称 与 商品描述
        if (empty($subject)) {
            throw new PayException('必须提供 商品的标题/交易标题/订单标题/订单关键字 等');
        }

        // 检查订单号是否合法
        if (empty($orderNo) || mb_strlen($orderNo) > 64) {
            throw new PayException('订单号不能为空，并且长度不能超过64位');
        }

        // 检查金额不能低于0.01
        if (bccomp($amount, Config::PAY_MIN_FEE, 2) === -1) {
            throw new PayException('支付金额不能低于 ' . Config::PAY_MIN_FEE . ' 元');
        }

        // 检查商品类型
        if (is_null($goodsType)) {// 默认为实物类商品
            $this->goods_type = 1;
        } elseif (! in_array($goodsType, [0 ,1])) {
            throw new PayException('商品类型可取值为：0-虚拟类商品  1-实物类商品');
        }

        // 返回参数进行urlencode编码
        if (! empty($passBack) && ! is_string($passBack)) {
            throw new PayException('回传参数必须是字符串');
        }
        if (!empty($passBack)) {
            $this->return_param = urlencode($passBack);
        }
    }
protected function checkDataParam()
    {
        $subject = $this->subject;
        $orderNo = $this->order_no;
        $amount = $this->amount;
        $goodsType = $this->goods_type;
        $passBack = $this->return_param;

        // 检查 商品名称 与 商品描述
        if (empty($subject)) {
            throw new PayException('必须提供 商品的标题/交易标题/订单标题/订单关键字 等');
        }

        // 检查订单号是否合法
        if (empty($orderNo) || mb_strlen($orderNo) > 64) {
            throw new PayException('订单号不能为空，并且长度不能超过64位');
        }

        // 检查金额不能低于0.01
        if (bccomp($amount, Config::PAY_MIN_FEE, 2) === -1) {
            throw new PayException('支付金额不能低于 ' . Config::PAY_MIN_FEE . ' 元');
        }

        // 检查商品类型
        if (is_null($goodsType)) {// 默认为实物类商品
            $this->goods_type = 1;
        } elseif (! in_array($goodsType, [0 ,1])) {
            throw new PayException('商品类型可取值为：0-虚拟类商品  1-实物类商品');
        }

        // 返回参数进行urlencode编码
        if (! empty($passBack) && ! is_string($passBack)) {
            throw new PayException('回传参数必须是字符串');
        }
        if (!empty($passBack)) {
            $this->return_param = urlencode($passBack);
        }
    }
protected function checkDataParam ( ) { $ subject = $ this -> subject ; $ orderNo = $ this -> order_no ; $ amount = $ this -> amount ; $ goodsType = $ this -> goods_type ; $ passBack = $ this -> return_param ; // 检查 商品名称 与 商品描述 if ( empty ( $ subject ) ) { throw new PayException ( '必须提供 商品的标题/交易标题/订单标题/订单关键字 等'); } // 检查订单号是否合法 if ( empty ( $ orderNo ) || mb_strlen ( $ orderNo ) > 64 ) { throw new PayException ( '订单号不能为空，并且长度不能超过64位'); } // 检查金额不能低于0.01 if ( bccomp ( $ amount , Config :: PAY_MIN_FEE , 2 ) === - 1 ) { throw new PayException ( '支付金额不能低于 ' . Config::PAY_M N FEE .  '  元'); } // 检查商品类型 if ( is_null ( $ goodsType ) ) { // 默认为实物类商品 $ this -> goods_type = 1 ; } elseif ( ! in_array ( $ goodsType , [ 0 , 1 ] ) ) { throw new PayException ( '商品类型可取值为：0-虚拟类商品  1-实物类商品'); } // 返回参数进行urlencode编码 if ( ! empty ( $ passBack ) && ! is_string ( $ passBack ) ) { throw new PayException ( '回传参数必须是字符串'); } if ( ! empty ( $ passBack ) ) { $ this -> return_param = urlencode ( $ passBack ) ; } }
检查传入的支付业务参数是否正确

如果输入参数不符合规范，直接抛出异常

@author helei
检查传入的支付业务参数是否正确