作者 chencheng

0601-21

@@ -355,7 +355,9 @@ class Wechat extends Api @@ -355,7 +355,9 @@ class Wechat extends Api
355 } else { 355 } else {
356 356
357 } 357 }
358 - echo "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml> "; // 返回处理完成 358 + // 返回状态
  359 + return $this->returnCode(true, 'OK');
  360 +
359 361
360 /* 362 /*
361 $xml = file_get_contents("php://input"); 363 $xml = file_get_contents("php://input");
@@ -366,6 +368,47 @@ class Wechat extends Api @@ -366,6 +368,47 @@ class Wechat extends Api
366 */ 368 */
367 } 369 }
368 370
  371 + /**
  372 + * 返回状态给微信服务器
  373 + * @param boolean $returnCode
  374 + * @param string $msg
  375 + */
  376 + private function returnCode($returnCode = true, $msg = null)
  377 + {
  378 + // 返回状态
  379 + $return = [
  380 + 'return_code' => $returnCode ? 'SUCCESS' : 'FAIL',
  381 + 'return_msg' => $msg ?: 'OK',
  382 + ];
  383 +
  384 + die($this->toXml($return));
  385 + }
  386 +
  387 + /**
  388 + * 输出xml字符
  389 + * @param $values
  390 + * @return bool|string
  391 + */
  392 + private function toXml($values)
  393 + {
  394 + if (!is_array($values)
  395 + || count($values) <= 0
  396 + ) {
  397 + return false;
  398 + }
  399 +
  400 + $xml = "<xml>";
  401 + foreach ($values as $key => $val) {
  402 + if (is_numeric($val)) {
  403 + $xml .= "<" . $key . ">" . $val . "</" . $key . ">";
  404 + } else {
  405 + $xml .= "<" . $key . "><![CDATA[" . $val . "]]></" . $key . ">";
  406 + }
  407 + }
  408 + $xml .= "</xml>";
  409 + return $xml;
  410 + }
  411 +
369 412
370 /** 支付成功 则进入分销链条 2级分销 413 /** 支付成功 则进入分销链条 2级分销
371 * 1. 上级 是代理人 则直接获得佣金 企业付款 414 * 1. 上级 是代理人 则直接获得佣金 企业付款