$values
$values :
回调基础类
NotifyProcess(array $data, string $msg) : \true回调出来完成不需要继续回调,false回调处理未完成需要继续回调
回调方法入口,子类可重写该方法 注意: 1、微信回调超时时间为2s,建议用户使用异步处理流程,确认成功之后立刻回复微信服务器 2、微信服务器在调用失败或者接到回包为非确认包的时候,会发起重试,需确保你的回调是可以重入
array | $data | 回调解释出的参数 |
string | $msg | 如果回调处理失败,可以将错误信息输出到该方法 |
<?php
namespace wxpay\example;
require_once(EXTEND_PATH.'wxpay/lib/WxPay.Api.php');
require_once(EXTEND_PATH.'wxpay/lib/WxPay.Notify.php');
class PayNotifyCallBack extends \WxPayNotify
{
//查询订单
public function Queryorder($transaction_id)
{
$input = new \WxPayOrderQuery();
$input->SetTransaction_id($transaction_id);
$result = \WxPayApi::orderQuery($input);
if(array_key_exists("return_code", $result)
&& array_key_exists("result_code", $result)
&& $result["return_code"] == "SUCCESS"
&& $result["result_code"] == "SUCCESS")
{
return true;
}
return false;
}
//重写回调处理函数
public function NotifyProcess($data, &$msg)
{
$notfiyOutput = array();
if(!array_key_exists("transaction_id", $data)){
$msg = "输入参数不正确";
return false;
}
//查询订单,判断订单真实性
if(!$this->Queryorder($data["transaction_id"])){
$msg = "订单查询失败";
return false;
}
return true;
}
}
//$notify = new PayNotifyCallBack();
//$notify->Handle(false);