Esempio n. 1
0
 * 
 * 这里举例使用log文件形式记录回调信息。
*/
include_once "./log_.php";
include_once "./WxPayHelper/WxPayHelper.php";
//使用通用通知接口
$notify = new Notify();
//存储微信的回调
$xml = $GLOBALS['HTTP_RAW_POST_DATA'];
$notify->saveData($xml);
//验证签名,并回应微信。
//对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,
//微信会通过一定的策略(如30分钟共8次)定期重新发起通知,
//尽可能提高通知的成功率,但微信不保证通知最终能成功。
if ($notify->checkSign() == FALSE) {
    $notify->setReturnParameter("return_code", "FAIL");
    //返回状态码
    $notify->setReturnParameter("return_msg", "签名失败");
    //返回信息
} else {
    $notify->setReturnParameter("return_code", "SUCCESS");
    //设置返回码
}
$returnXml = $notify->returnXml();
echo $returnXml;
//==商户根据实际情况设置相应的处理流程,此处仅作举例=======
//以log文件形式记录回调信息
$log_ = new Log_();
$log_name = "./logs/notify_url.log";
//log文件路径
$log_->log_result($log_name, "【接收到的notify通知】:\n" . $xml . "\n");