Пример #1
0
 public static function bankorderquery($authorid, $paycardid, $orderNumber, $orderTime)
 {
     global $weburl;
     global $g_sdcrid;
     $ErrorReponse = new ErrorReponse();
     // 1. 初始化
     $arr_merid = BankPayInfo::getpaymerinfo($authorid);
     $merid = $arr_merid['merid'];
     $securitykey = $arr_merid['securitykey'];
     $tradeurl = $arr_merid['tradeurl'];
     $queryurl = $arr_merid['queryurl'];
     $sdcrid = $arr_merid['sdcrid'];
     $payurl = $weburl . "third_api/upmp_query.php?orderTime={$orderTime}&orderNumber={$orderNumber}&merid={$merid}&securitykey={$securitykey}&queryurl={$queryurl}&tradeurl={$tradeurl}";
     //	echo $payurl;
     $ch = curl_init();
     // 2. 设置选项,包括URL
     curl_setopt($ch, CURLOPT_URL, $payurl);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_HEADER, 0);
     // 3. 执行并获取HTML文档内容
     //$arr_output[] = curl_exec($ch);
     $output = curl_exec($ch);
     if ($output === FALSE) {
         $Error = array('rettype' => '800', 'retcode' => '800', 'retmsg' => curl_error($ch));
         $ErrorReponse->reponError($Error);
         exit;
     }
     //echo $output;
     $str = str_replace("(", "", str_replace(")", "", str_replace("Array", "", str_replace(" ", "", $output))));
     $arr_value = explode("[", $str);
     for ($i = 0; $i < count($arr_value); $i++) {
         $arr_valuetmp = explode("]=>", $arr_value[$i]);
         $arr_bankpay[$arr_valuetmp[0]] = $arr_valuetmp[1];
     }
     // 4. 释放curl句柄
     curl_close($ch);
     if ($arr_bankpay['respCode'] != 0) {
         $Error = array('rettype' => '800', 'retcode' => '800', 'retmsg' => $arr_bankpay['respMsg'] . "[" . $arr_bankpay['respCode'] . "]");
         $ErrorReponse->reponError($Error);
         exit;
     } else {
         return $arr_ofpayinfo;
     }
 }