php处理微信支付回调改变订单支付状态的代码
内容导读
收集整理的这篇技术教程文章主要介绍了php处理微信支付回调改变订单支付状态的代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1816字,纯文字阅读大概需要3分钟。
内容图文
本篇文章给大家带来的内容是关于php服务端APP微信支付回调验证签名改变订单支付状态,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。<?php //处理微信支付回调 $time = time(); $testxml = file_get_contents("php://input"); //接收微信发送的支付成功信息 //file_put_contents('D:webrootxianyijieJKweixin.txt',$testxml); $result = XMLDataParse($testxml); file_put_contents("D:webrootxianyijieJKweixin.txt", json_encode($result)."rn", FILE_APPEND); //将信息写入txt文件做支付备份 $sign_return = $result['sign']; //如果成功返回了 if($result['return_code'] == 'SUCCESS' && $result['result_code'] == 'SUCCESS'){ $key = "商户密钥key"; unset($result['sign']); $sign = appgetSign($result,$key); if($sign == $sign_return) //验证签名 { //这里是验签成功后的sql操作 //如果操作成功 return "<xml><return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[OK]]></return_msg> </xml>"; //如果操作失败 return "fail"; } }/* * 格式化参数格式化成url参数 生成签名sign*/ function appgetSign($Obj,$appwxpay_key) { foreach ($Obj as $k => $v) { $Parameters[$k] = $v; } //签名步骤一:按字典序排序参数 ksort($Parameters); $String = formatBizQueryParaMap($Parameters, false); //echo '【string1】'.$String.'</br>'; //签名步骤二:在string后加入KEY if($appwxpay_key){ $String = $String."&key=".$appwxpay_key; } //echo "【string2】".$String."</br>"; //签名步骤三:MD5加密 $String = md5($String); //echo "【string3】 ".$String."</br>"; //签名步骤四:所有字符转为大写 $result_ = strtoupper($String); //echo "【result】 ".$result_."</br>"; return $result_; }//xml格式数据解析函数 function XMLDataParse($data){ $xml = simplexml_load_string($data,NULL,LIBXML_NOCDATA); $array=json_decode(json_encode($xml),true); return $array; }?>
相关文章推荐:
php的curl中post方式和get方式的请求代码
关于PHP中间键的内容解析
以上就是php处理微信支付回调改变订单支付状态的代码的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的php处理微信支付回调改变订单支付状态的代码全部内容,希望文章能够帮你解决php处理微信支付回调改变订单支付状态的代码所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。