php端-微信支付的异步通知获取&解析&回调结果通知


获取微信返回的数据

  file_get_contents("php://input");

微信支付通知结果的参数字典

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7

获取的通知数据转换为Array

  public function xmlToArray($xml=''){
    $temp  = json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA));
    return json_decode($temp, true);
  }
  $testxml  = file_get_contents("php://input");
  $jsonxml = json_encode(simplexml_load_string($testxml, 'SimpleXMLElement', LIBXML_NOCDATA));
  $result = json_decode($jsonxml, true);//转成数组,

在回调里面给微信通知-回调成功

  echo '<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>';

数组转xml


function arrayToXml($arr) {
    $xml = "<xml>";
    foreach ($arr as $key => $val){
        if (is_numeric($val)){
            $xml.="<$key>$val</$key>";
        }
        else
            $xml.="<$key><![CDATA[$val]]></$key>";
    }
    $xml.="</xml>";
    return $xml;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM