/** * 生成要请求给支付宝的参数数组 * @param $para_temp 请求前的参数数组 * @return 要请求的参数数组字符串 */ private function buildRequestParaToString($para_temp) { //待请求参数数组 $para = $this->buildRequestPara($para_temp); //把参数组中所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串,并对字符串做urlencode编码 $request_data = EasyHelpers::createLinkstring($para, true); return $request_data; }
/** * 生成签名; * @param array $data * @return string */ private static function sign($data = []) { $params = $data ?: self::$config; $fileter = EasyHelpers::paraFilter($params); $sort = EasyHelpers::argSort($fileter); $url = EasyHelpers::createLinkstring($sort); $keyString = $url . '&key=' . \Yii::$app->params['wechatPay']['key']; $sign = strtoupper(md5($keyString)); self::$config['sign'] = $sign; return $sign; }