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;
}

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

上一篇:五个必须警惕的数据库设计错误


下一篇:oracle数据操纵语言(DML)data manipulation language