国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - Thinkphp 5.0實現微信企業付款到零錢

Thinkphp 5.0實現微信企業付款到零錢

2019-09-04 11:18天津PHP&C# PHP教程

這篇文章主要為大家詳細介紹了Thinkphp 5.0實現微信企業付款到零錢,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Thinkphp 5.0 微信企業付款到零錢的具體代碼,供大家參考,具體內容如下

【微信支付】企業付款到零錢:官方文檔

注意:1,證書路徑一定要寫絕對路徑,且使用函數getcwd()。

Thinkphp 5.0實現微信企業付款到零錢

function transfer($data){
  //支付信息
  $wxchat['appid'] = WxPayConfig::$appid;
  $wxchat['mchid'] = WxPayConfig::$mchid;
  $webdata = array(
  'mch_appid' => $wxchat['appid'],//商戶賬號appid
    'mchid'  => $wxchat['mchid'],//商戶號
  'nonce_str' => md5(time()),//隨機字符串
    'partner_trade_no'=> date('YmdHis'), //商戶訂單號,需要唯一
  'openid' => $data['openid'],//轉賬用戶的openid
  'check_name'=> 'NO_CHECK', //OPTION_CHECK不強制校驗真實姓名, FORCE_CHECK:強制 NO_CHECK:
  'amount' => $data['money']*100, //付款金額單位為分
  'desc' => '微信企業付款到零錢',//企業付款描述信息
  'spbill_create_ip' => request()->ip(),//獲取IP
  );
  foreach ($webdata as $k => $v) {
  $tarr[] =$k.'='.$v;
  }
  sort($tarr);
  $sign = implode($tarr, '&');
  $sign .= '&key='.WxPayConfig::$key;
  $webdata['sign']=strtoupper(md5($sign));
  $wget = $this->ArrToXml($webdata);//數組轉XML
  $pay_url = 'https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers';//api地址
  $res = $this->postData($pay_url,$wget);//發送數據
  if(!$res){
  return array('status'=>1, 'msg'=>"Can't connect the server" );
  }
  $content = simplexml_load_string($res, 'SimpleXMLElement', LIBXML_NOCDATA);
  if(strval($content->return_code) == 'FAIL'){
  return array('status'=>1, 'msg'=>strval($content->return_msg));
  }
  if(strval($content->result_code) == 'FAIL'){
  return array('status'=>1, 'msg'=>strval($content->err_code),':'.strval($content->err_code_des));
  }
  $rdata = array(
  'mch_appid'  => strval($content->mch_appid),
  'mchid'   => strval($content->mchid),
  'device_info'  => strval($content->device_info),
  'nonce_str'  => strval($content->nonce_str),
  'result_code'  => strval($content->result_code),
  'partner_trade_no' => strval($content->partner_trade_no),
  'payment_no'  => strval($content->payment_no),
  'payment_time'  => strval($content->payment_time),
  );
  return $rdata;
}
//數組轉XML
 function ArrToXml($arr)
 {
  if(!is_array($arr) || count($arr) == 0) return '';
  $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;
 }


//發送數據
 function postData($url,$postfields){
  $ch = curl_init();
  $params[CURLOPT_URL] = $url; //請求url地址
  $params[CURLOPT_HEADER] = false; //是否返回響應頭信息
  $params[CURLOPT_RETURNTRANSFER] = true; //是否將結果返回
  $params[CURLOPT_FOLLOWLOCATION] = true; //是否重定向
  $params[CURLOPT_POST] = true;
  $params[CURLOPT_POSTFIELDS] = $postfields;
  $params[CURLOPT_SSL_VERIFYPEER] = false;
  $params[CURLOPT_SSL_VERIFYHOST] = false;
  //以下是證書相關代碼
  $params[CURLOPT_SSLCERTTYPE] = 'PEM';
  $params[CURLOPT_SSLCERT] = getcwd().'/plugins/payment/weixin/cert/apiclient_cert.pem';//絕對路徑
  $params[CURLOPT_SSLKEYTYPE] = 'PEM';
  $params[CURLOPT_SSLKEY] = getcwd().'/plugins/payment/weixin/cert/apiclient_key.pem';//絕對路徑
  curl_setopt_array($ch, $params); //傳入curl參數
  $content = curl_exec($ch); //執行
  curl_close($ch); //關閉連接
  return $content;
 }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: av一区二区三区 | 影音先锋中文字幕在线观看 | 成年人毛片视频 | 龙珠z普通话国语版在线观看 | 一区视频在线播放 | 久久九九国产精品 | 亚洲国产一级毛片 | 欧美在线一区二区 | 五月婷婷在线视频 | 国产片在线播放 | 精品在线视频一区 | 人人澡人人射 | 99亚洲国产精品 | 欧美日韩一区二区电影 | 久久精品视频一区 | 亚洲国产成人精品女人久久久 | 老司机午夜免费精品视频 | 欧美精品一区二区三区蜜桃视频 | 欧美日韩精品一区二区三区四区 | 久久久久久免费精品 | 亚洲美女久久 | 久久99精品久久久久久久 | 国产 欧美 日韩 一区 | 韩日电影 | 免费一区| 国产精品色一区二区三区 | 中文精品一区二区 | 激情久久婷婷 | 久久精品国产亚洲一区二区三区 | 欧美亚洲综合另类 | 999久久久国产999久久久 | 国产成人精品一区二区在线 | 日韩欧美中文字幕在线视频 | 欧美午夜影院 | 男女18免费网站视频 | 在线亚洲一区 | 久久综合久久综合久久综合 | 久久99精品一区二区三区三区 | 国产精品久久国产精品 | 一呦二呦三呦国产精品 | 国产精品一区二区无线 |