婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP實現微信退款的方法示例

PHP實現微信退款的方法示例

熱門標簽:海南人工外呼系統有效果嗎 阿里云400電話申請加工單 地下城堡2圖九地圖標注 九江外呼系統 抖音有個地圖標注是什么意思 七魚外呼系統停用嗎 保定crm外呼系統運營商 西區企業怎么做地圖標注入駐 智能電話機器人排名前十名南京

本文實例講述了PHP實現微信退款的方法。分享給大家供大家參考,具體如下:

$obj = new WXRefund('參數');
$obj->refundApi();

直接能用 公眾號的參數 自己加上吧 只能幫你們到這了!

?php
namespace Wechat;
/**
 * 微信退款
 * @author    zzy
 * @version   $V1.0.0$
 * @date    2018-11-9
 */
class WXRefund
{
  protected $SSLCERT_PATH ='';//證書
  protected $SSLKEY_PATH = '';//證書
  protected $opUserId = '';//商戶號
  protected $key = '';//API密鑰
  protected $appId = '';//appId
  function __construct($outTradeNo, $totalFee, $outRefundNo, $refundFee)
  {
    //初始化退款類需要的變量
    $this->totalFee = $totalFee;//訂單金額
    $this->refundFee = $refundFee;//退款金額
    $this->outTradeNo = $outTradeNo;//訂單號
    $this->outRefundNo = $outRefundNo;//退款訂單
  }
  /**
   * 通過微信api進行退款流程 唯一對外接口
   * @return string
   */
  public function refundApi()
  {
    $parma = array(
      'appid' => $this->appId,
      'mch_id' => $this->opUserId,
      'nonce_str' => randoms(32),//這個是隨機數 自己封裝去吧。。。
      'out_refund_no' => $this->outRefundNo,
      'out_trade_no' => $this->outTradeNo,
      'total_fee' => intval($this->totalFee * 100),
      'refund_fee' => intval($this->refundFee * 100),
    );
    $parma['sign'] = $this->getSign($parma, $this->key);
    $xmldata = $this->arrayToXml($parma);
    $xmlresult = $this->postXmlSSLCurl($xmldata, 'https://api.mch.weixin.qq.com/secapi/pay/refund');
    $result = $this->arrayToXml($xmlresult);
    return $result;
  }
  /**
   * 數組轉xml
   * @param $arr
   * @return string
   */
  protected 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;
  }
  /**
   * 簽名加密
   * @param $params
   * @param $key
   */
  protected function getSign($params, $key)
  {
    ksort($params, SORT_STRING);
    $unSignParaString = $this->formatQueryParaMap($params, false);
    return $signStr = strtoupper(md5($unSignParaString . "key=" . $key));
  }
  /**
   * 排序
   * @param $paraMap
   * @param bool $urlEncode
   * @return bool|string
   */
  protected function formatQueryParaMap($paraMap, $urlEncode = false)
  {
    $buff = "";
    ksort($paraMap);
    foreach ($paraMap as $k => $v) {
      if (null != $v  "null" != $v) {
        if ($urlEncode) {
          $v = urlencode($v);
        }
        $buff .= $k . "=" . $v . "";
      }
    }
    $reqPar = '';
    if (strlen($buff) > 0) {
      $reqPar = substr($buff, 0, strlen($buff) - 1);
    }
    return $reqPar;
  }
  /**
   * 需要使用證書的請求
   * @param $xml
   * @param $url
   * @param int $second
   * @return bool|mixed
   */
  protected function postXmlSSLCurl($xml, $url, $second = 30)
  {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_TIMEOUT, $second);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_HEADER, FALSE);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'PEM');
    curl_setopt($ch, CURLOPT_SSLCERT, $this->SSLCERT_PATH);
    curl_setopt($ch, CURLOPT_SSLKEYTYPE, 'PEM');
    curl_setopt($ch, CURLOPT_SSLKEY, $this->SSLKEY_PATH);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
    $data = curl_exec($ch);
    if ($data) {
      curl_close($ch);
      return $data;
    } else {
      $error = curl_errno($ch);
      echo "curl出錯,錯誤碼:$error" . "br>";
      curl_close($ch);
      return false;
    }
  }
}

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP微信開發技巧匯總》、《php curl用法總結》、《PHP網絡編程技巧總結》、《php字符串(string)用法總結》、《PHP中json格式數據操作技巧匯總》及《PHP針對XML文件操作技巧總結》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP實現的支付寶支付功能示例
  • PHP微信支付功能示例
  • PHP小程序支付功能完整版【基于thinkPHP】
  • PHP設計模式之單例模式定義與用法分析
  • docker搭建php+nginx+swoole+mysql+redis環境的方法
  • php+mysql開發中的經驗與常識小結
  • PHP設計模式之抽象工廠模式實例分析
  • PHP設計模式之簡單工廠和工廠模式實例分析
  • PHP實現無限極分類的兩種方式示例【遞歸和引用方式】
  • PHP中localeconv()函數的用法

標簽:遼陽 甘肅 昭通 韶關 九江 十堰 梅河口 涼山

巨人網絡通訊聲明:本文標題《PHP實現微信退款的方法示例》,本文關鍵詞  PHP,實現,微信,退款,的,方法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP實現微信退款的方法示例》相關的同類信息!
  • 本頁收集關于PHP實現微信退款的方法示例的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品成人午夜| 高清国产午夜精品久久久久久| 欧美电影免费观看高清完整版 | 久久综合久久综合九色| 欧美xxxxx裸体时装秀| 国产日韩成人精品| 亚洲日本在线看| 婷婷成人激情在线网| 国产精品资源在线看| 日本精品一区二区三区高清| 久久爱www久久做| 成人精品一区二区三区四区| 色香蕉成人二区免费| 日韩视频中午一区| 中文字幕制服丝袜一区二区三区 | 在线观看国产91| 欧美岛国在线观看| 一区二区三区欧美在线观看| 久久国产三级精品| 色综合网色综合| 欧美v日韩v国产v| 欧美系列一区二区| 久久久无码精品亚洲日韩按摩| 亚洲品质自拍视频| 国产综合久久久久久鬼色 | 国产一区二区三区在线观看精品| 91麻豆精品视频| 久久理论电影网| 日韩中文字幕亚洲一区二区va在线 | 欧美午夜一区二区三区| 久久日一线二线三线suv| 一区二区久久久| 国产高清久久久| 丁香亚洲综合激情啪啪综合| 欧美二区乱c少妇| 亚洲欧美国产毛片在线| 懂色av一区二区在线播放| 欧美一区二区三区视频免费 | 不卡在线观看av| 久久久久久久电影| 精品一区二区三区日韩| 精品视频一区二区三区免费| 亚洲天堂av老司机| caoporn国产精品| 国产欧美日韩另类一区| 国产综合久久久久久鬼色| 日韩午夜在线观看视频| 日产国产高清一区二区三区| 欧美日韩一级大片网址| 亚洲精品国久久99热| 99久久婷婷国产精品综合| 欧美激情一区二区三区蜜桃视频| 中文字幕欧美区| 国产精品18久久久| 国产蜜臀97一区二区三区| 久久精品国产精品亚洲综合| 91精品黄色片免费大全| 日日骚欧美日韩| 在线不卡一区二区| 日本伊人午夜精品| 日韩精品一区国产麻豆| 免费人成精品欧美精品| 日韩精品中文字幕在线一区| 麻豆精品在线观看| 精品国产麻豆免费人成网站| 精品一区二区三区免费毛片爱 | 石原莉奈一区二区三区在线观看| 色屁屁一区二区| 一个色综合网站| 欧美日韩精品欧美日韩精品一| 亚洲自拍偷拍网站| 91精品黄色片免费大全| 国产在线视频精品一区| 国产精品视频免费看| 在线日韩国产精品| 免费看日韩a级影片| 久久精品亚洲麻豆av一区二区| 国产乱子伦一区二区三区国色天香| 国产婷婷色一区二区三区四区 | av不卡在线播放| 中文字幕亚洲区| 欧美人成免费网站| 韩国成人福利片在线播放| 国产日韩av一区| 99久久综合精品| 天堂va蜜桃一区二区三区 | 久久新电视剧免费观看| 99国产精品久久久久| 日韩影院免费视频| 久久精品一级爱片| 欧美三级电影一区| 狠狠网亚洲精品| 国产精品成人午夜| 欧美一级欧美一级在线播放| 国模一区二区三区白浆| 国产精品的网站| 久久精品国产999大香线蕉| 91精品国产入口| 国产成人在线视频免费播放| 国产清纯在线一区二区www| 欧美日韩久久久一区| 日本三级亚洲精品| 337p粉嫩大胆色噜噜噜噜亚洲| 国产精品99久久久久久似苏梦涵 | 国产不卡免费视频| 国产精品久久精品日日| 日本电影欧美片| 日本vs亚洲vs韩国一区三区二区 | 高清不卡在线观看av| 亚洲欧洲国产日本综合| 欧美怡红院视频| 毛片一区二区三区| 久久综合999| 91日韩在线专区| 捆绑变态av一区二区三区| 欧美国产成人在线| 欧美日韩高清在线| 国产一区二区三区四区五区美女| 国产精品成人一区二区艾草 | 久久亚洲一级片| 成人一区二区在线观看| 久热成人在线视频| 中文字幕在线观看不卡视频| 欧美日韩一区二区三区不卡| 国产在线视视频有精品| 一区二区三区日韩欧美精品| 日韩一二在线观看| 欧美精品欧美精品系列| 激情综合色丁香一区二区| 亚洲欧洲成人精品av97| 日韩欧美第一区| 91在线视频观看| 国产综合色在线| 午夜精品福利久久久| 国产精品欧美一级免费| 欧美一级视频精品观看| 国产激情91久久精品导航 | 日韩精品一区二区三区中文不卡| 天天av天天翘天天综合网色鬼国产| 精品国产第一区二区三区观看体验| 色悠悠久久综合| 国产成人在线视频免费播放| 日韩国产精品久久| 亚洲日本在线天堂| 国产免费观看久久| 精品人在线二区三区| www.亚洲精品| 91福利视频久久久久| 波多野结衣的一区二区三区| 麻豆成人免费电影| 亚洲高清在线精品| 亚洲欧洲中文日韩久久av乱码| 亚洲美女在线国产| 国产精品免费久久久久| 久久婷婷国产综合精品青草| 欧美群妇大交群的观看方式| 91在线观看下载| aa级大片欧美| 成人激情小说乱人伦| 亚洲精品乱码久久久久久| 国产精品久久国产精麻豆99网站| 精品国产91洋老外米糕| 欧美一区二区三区在线观看视频| 精品国产髙清在线看国产毛片| 51午夜精品国产| 欧美久久免费观看| 欧美日韩国产精选| 欧美三级蜜桃2在线观看| 香蕉成人啪国产精品视频综合网| 免费成人美女在线观看.| 丝袜美腿亚洲综合| 亚洲精品免费在线观看| 免费精品视频在线| 久久疯狂做爰流白浆xx| 加勒比av一区二区| 国产剧情一区在线| 蜜臀a∨国产成人精品| 91丨九色丨蝌蚪丨老版| 色天天综合色天天久久| 欧美亚洲日本国产| 欧美一区二区视频在线观看 | 亚洲成人精品一区二区| 亚洲图片自拍偷拍| 亚洲狠狠爱一区二区三区| 国产大陆亚洲精品国产| 成人精品亚洲人成在线| 在线亚洲一区二区| 制服丝袜成人动漫| 337p粉嫩大胆噜噜噜噜噜91av| 久久久夜色精品亚洲| 粗大黑人巨茎大战欧美成人| 粉嫩一区二区三区在线看 | 国产91丝袜在线播放0| 91在线国内视频| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 欧美日韩国产首页| 欧美成人午夜电影| 亚洲国产美女搞黄色| 久久99久久99小草精品免视看| 国产福利一区在线|