예제 #1
0
 /**
  * 生成要请求给支付宝的参数数组
  *
  * @param $para_temp 请求前的参数数组
  * @param bool $encode 是否对字符串进行urlencode编码
  * @return string 要请求的参数数组字符串
  */
 function buildRequestParaToString($para_temp, $encode = true)
 {
     //待请求参数数组
     $para = $this->buildRequestPara($para_temp);
     if ($encode) {
         //把参数组中所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串,并对字符串做urlencode编码
         $request_data = AlipayCore::createLinkstringUrlencode($para);
     } else {
         $request_data = AlipayCore::createLinkstring($para);
     }
     return $request_data;
 }
예제 #2
0
 /**
  * 获取返回时的签名验证结果
  * @param $para_temp 通知返回来的参数数组
  * @param $sign 返回的签名结果
  * @return 签名验证结果
  */
 function getSignVeryfy($para_temp, $sign)
 {
     // 除去待签名参数数组中的空值和签名参数
     $para_filter = AlipayCore::paraFilter($para_temp);
     // 对待签名参数数组排序
     $para_sort = AlipayCore::argSort($para_filter);
     //把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
     $prestr = AlipayCore::createLinkstring($para_sort);
     switch (strtoupper(trim($this->alipay_config['sign_type']))) {
         case "RSA":
             $isSgin = AlipayRsa::rsaVerify($prestr, trim($this->alipay_config['ali_public_key_path']), $sign);
             break;
         default:
             $isSgin = false;
     }
     return $isSgin;
 }