php对微信支付回调处理的技巧
发布时间:2022-06-30 15:24:58 所属栏目:PHP教程 来源:互联网
导读:应用场景 支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答。 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽可能提高通知的成功率,但微信不
应用场景 支付完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并返回应答。 对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,微信会通过一定的策略定期重新发起通知,尽可能提高通知的成功率,但微信不保证通知最终能成功。 (通知频率为15/15/30/180/1800/1800/1800/1800/3600,单位:秒) 微信支付回调处理分为 1.同步 2.异步 这里微信官方推荐使用 第二种 php对微信回调异步处理 //获取返回的xml $testxml = file_get_contents("php://input"); //将xml转化为json格式 $jsonxml = json_encode(simplexml_load_string($testxml, 'SimpleXMLElement', LIBXML_NOCDATA)); //转成数组 $result = json_decode($jsonxml, true); if($result){ //如果成功返回了 if($result['return_code'] == 'SUCCESS' && $result['result_code'] == 'SUCCESS'){ //进行改变订单状态等操作。。。。 } } 本次微信支付返回的xml转化为json格式如下: { "appid": "12345", "attach": "pay", "bank_type": "CFT", "cash_fee": "1", "total_fee": "1", "trade_type": "MWEB", "transaction_id": "4200000171201808221550954201" } 其中 "result_code": "SUCCESS", "return_code": "SUCCESS", 是判断用户是否已经支付的依据 (编辑:云计算网_泰州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |