ray(
"appId" => $config['appid'],
"timeStamp" => $timestamp,
"nonceStr" => $this->createNonceStr(),
"package" => "prepay_id=" . $unifiedOrder->prepay_id,
"signType" => 'MD5',
"code_url" => $code_list[0]
);
$arr['paySign'] = $this->getSign($arr, $config['key']);
return $arr;
}
/**
* 查询订单
*/
public function orderQuery($outTradeNo)
{
$config = array(
'mch_id' => $this->mchid,
'appid' => $this->appid,
'key' => $this->key,
);
$unified = array(
'appid' => $config['appid'],
'mch_id' => $config['mch_id'],
'out_trade_no' => $outTradeNo,
'nonce_str' => $this->createNonceStr()
);
$unified['sign'] = $this->getSign($unified, $config['key']);
$responseXml = $this->curlPost('https://api.mch.weixin.qq.com/pay/orderquery', $this->arrayToXml($unified));
/*
<xml><return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid><![CDATA[wx406c5455be1a2590]]></appid>
<mch_id><![CDATA[1398638602]]></mch_id>
<nonce_str><![CDATA[ousUeAEvH6KlDiGe]]></nonce_str>
<sign><![CDATA[D8BFB54A52C324238D5A4BA8C8BC6D01]]></sign>
<result_code><![CDATA[SUCCESS]]></result_code>
<out_trade_no><![CDATA[1476157452]]></out_trade_no>
<trade_state><![CDATA[NOTPAY]]></trade_state>
<trade_state_desc><![CDATA[订单未支付]]></trade_state_desc>
</xml>
*/
$unifiedOrder = simplexml_load_string($responseXml, 'SimpleXMLElement', LIBXML_NOCDATA);
if ($unifiedOrder === false) {
die('parse xml error');
}
if ($unifiedOrder->return_code != 'SUCCESS') {
die($unifiedOrder->return_msg);
}
if ($unifiedOrder->result_code != 'SUCCESS') {
die($unifiedOrder->err_code);
/*
NOAUTH 商户无此接口权限
NOTENOUGH 余额不足
ORDERPAID 商户订单已支付
ORDERCLOSED 订单已关闭
SYSTEMERROR 系统错误
APPID_NOT_EXIST APPID不存在
MCHID_NOT_EXIST MCHID不存在
APPID_MCHID_NOT_MATCH appid和mch_id不匹配
LACK_PARAMS 缺少参数
OUT_TRADE_NO_USED 商户订单号重复
SIGNERROR 签名错误
XML_FORMAT_ERROR XML格式错误
REQUIRE_POST_METHOD 请使用post方法
POST_DATA_EMPTY post数据为空
NOT_UTF8 编码格式错误
*/
}
//$unifiedOrder->trade_type 交易类型 调用接口提交的交易类型,取值如下:JSAPI,NATIVE,APP
//$unifiedOrder->prepay_id 预支付交易会话标识 微信生成的预支付回话标识,用于后续接口调用中使用,该值有效期为2小时
//$unifiedOrder->code_url 二维码链接 trade_type为NATIVE是有返回,可将该参数值生成二维码展示出来进行扫码支付
/*
public 'return_code' => string 'SUCCESS' (length=7)
public 'return_msg' => string 'OK' (length=2)
public 'appid' => string 'wx406c5455be1a2590' (length=18)
public 'mch_id' => string '1398638602' (length=10)
public 'nonce_str' => string 'lyt2ZGFeE9G0DI4W' (length=16)
public 'sign' => string 'F942BB644E72FE29936C80E6780D8D8A' (length=32)
public 'result_code' => string 'SUCCESS' (length=7)
public 'out_trade_no' => string '1476157452' (length=10)
public 'trade_state' => string 'NOTPAY' (length=6)
public 'trade_state_desc' => string '订单未支付' (length=15)
*/
//已结支付
/*
object(SimpleXMLElement)[26]
public 'return_code' => string 'SUCCESS' (length=7)
pu |