好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > PHP APP微信提現接口代碼

PHP APP微信提現接口代碼

熱門標簽:電信外呼系統多少錢一個月 桂陽公司如何做地圖標注 神龍斗士電話機器人 代理打電話機器人 宿州正規外呼系統軟件 合肥企業外呼系統線路 萍鄉商鋪地圖標注 太原400電話申請流程 企業400電話辦理多少費用

本文實例為大家分享了APP微信提現接口的具體代碼,供大家參考,具體內容如下

之前分享了微信支付接口、現在給大家分享一下APP提現的接口。

提現必須得用雙向證書、所以大家一定要在微信的商戶平臺找到相應的地方去設置、因為我做這個提現已經有一段時間了、所以設置微信商戶平臺的那幾個地方沒有圖的情況、也說不清楚、下次再做提現的時候、給大家分享如何設置商戶平臺那幾個地方、不是很難、下面貼代碼

?php
namespace Home\Controller;
use Think\Controller;
class TixianController extends Controller{

  //高級功能-》開發者模式-》獲取
  private $app_id1 = '';   //appid
  private $app_secret1 = ''; //secreat
  private $apikey1 = ''; //支付秘鑰
  private $mchid1 = 's';    //商戶號
  
    private $app_id=null;
    private $app_secret=null;
    private $apikey=null;
    private $mchid=null;
   
   
  public $error=0;
  public $state = '';
  //金額,需在實例化時傳入
  public $amount = '0';
  //用戶訂單號,需在實例化時傳入
  public $order_sn = '';
  //用戶openid,需在實例化時傳入
  public $openid = '';
  
  

  //微信提現操作接口-------》
  public function actionAct_tixian()
  {
   
   $this->state=md5(uniqid(rand(), TRUE));
   $this->amount=I('amount');//設置POST過來錢數
   $this->order_sn=rand(100,999).date('YmdHis'); //隨機數可以作為單號
   $this->openid= I('openid'); //設置獲取POST過來用戶的OPENID
    $user_id = I('user_id');

   $this->app_id=$this->app_id1;
   $this->app_secret=$this->app_secret1;
   $this->apikey=$this->apikey1;
   $this->mchid=$this->mchid1;
   $xml=$this->tiXianAction();
   $result=simplexml_load_string($xml);
   
   if($result->return_code=='SUCCESS'  $result->result_code=='SUCCESS') {

        $cash = D('cash');
        $data['user_id'] = $user_id;
        $data['amount'] = $this->amount;
        $res = $cash->where('user_id="'.$user_id.'"')->find();
        if($res){
          $res2 = $cash->where('user_id="'.$user_id.'"')->setInc('amount',$this->amount);
          $res4 = D('member')->where('user_id="'.$user_id.'"')->setDec('user_balance',$this->amount);
        }else{
          $res3 = $cash->add($data);
        }

      $output = array('code' => 1, 'data' => $result->result_code, 'info' => '提現成功');
      exit(json_encode($output));
   }else{

      $output = array('code' => 2, 'data' => $xml, 'info' => '提現失敗');
      exit(json_encode($output));
   }
  }
  /**
  * 提現接口操作,控制器調用
  * @param $openid 用戶openid 唯一標示
  * @return
  */
  //提現接口操作
  public function tiXianAction(){
   //獲取xml數據
   $data=$this->getdataXml($this->openid);
   $ch = curl_init ();
   //接口地址
   $MENU_URL="https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers";

   curl_setopt ( $ch, CURLOPT_URL, $MENU_URL );
   curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, "POST" );
   curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
   curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE );

   //證書地址,微信支付下面

    curl_setopt($ch,CURLOPT_SSLCERTTYPE,'PEM');
    curl_setopt($ch,CURLOPT_SSLCERT, 'C:\web\www\Home\wx_pay\apiclient_cert.pem'); //證書這塊大家把文件放到哪都行、
    curl_setopt($ch,CURLOPT_SSLKEYTYPE,'PEM');
    curl_setopt($ch,CURLOPT_SSLKEY, 'C:\web\www\Home\wx_pay\apiclient_key.pem');//注意證書名字千萬別寫錯、

   //$zs1=dirname(dirname(__FILE__)).'\wx_pay\apiclient_cert.pem';
   //$zs2=dirname(dirname(__FILE__)).'\wx_pay\apiclient_key.pem';
   //show_bug($zs1);

   //curl_setopt($ch,CURLOPT_SSLCERT,$zs1);
   //curl_setopt($ch,CURLOPT_SSLKEY,$zs2);
   // curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01;
   // Windows NT 5.0)');
   //curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 );
   curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 );
   curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
   curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
   $info = curl_exec ( $ch );
    //返回結果
    if($info){
      curl_close($ch);
      return $info;
    } else {
      $error = curl_errno($ch);
      curl_close($ch);
      return "curl出錯,錯誤碼:$error";
    }
  }
  /**
  * 獲取數據封裝為數組
  * @param $openid 用戶openid 唯一標示
  * @return xml
  */

  private function getdataXml($openid){
   //封裝成數據
   $dataArr=array(
     'amount'=>$this->amount*100,//金額(以分為單位,必須大于100)
     'check_name'=>'NO_CHECK',//校驗用戶姓名選項,NO_CHECK:不校驗真實姓名 FORCE_CHECK:強校驗真實姓名(未實名認證的用戶會校驗失敗,無法轉賬)OPTION_CHECK:針對已實名認證的用戶才校驗真實姓名(未實名認證用戶不校驗,可以轉賬成功)
     'desc'=>'提現',//描述
     'mch_appid'=>$this->app_id,
     'mchid'=>$this->mchid,//商戶號
     'nonce_str'=>rand(100000, 999999),//不長于32位的隨機數
     'openid'=>$openid,//用戶唯一標識
     'partner_trade_no'=>$this->order_sn,//商戶訂單號
     're_user_name'=>'',//用戶姓名,check_name為NO_CHECK時為可選項
     'spbill_create_ip'=>$_SERVER["REMOTE_ADDR"],//服務器ip
   );
   //獲取簽名
   $sign=$this->getSign($dataArr);
   //xml數據
   $data="xml>
     mch_appid>".$dataArr['mch_appid']."/mch_appid>
     mchid>".$dataArr['mchid']."/mchid>
     nonce_str>".$dataArr['nonce_str']."/nonce_str>
     partner_trade_no>".$dataArr['partner_trade_no']."/partner_trade_no>
     openid>".$dataArr['openid']."/openid>
     check_name>".$dataArr['check_name']."/check_name>
     re_user_name>".$dataArr['re_user_name']."/re_user_name>
     amount>".$dataArr['amount']."/amount>
     desc>".$dataArr['desc']."/desc>
     spbill_create_ip>".$dataArr['spbill_create_ip']."/spbill_create_ip>
     sign>".$sign."/sign>
     /xml>";
   return $data;

  }
  /**
  *   作用:格式化參數,簽名過程需要使用
  */
  private function formatBizQueryParaMap($paraMap, $urlencode)
  {

   $buff = "";
   ksort($paraMap);
   foreach ($paraMap as $k => $v)
   {
     if($v){
      if($urlencode)
      {
        $v = urlencode($v);
      }

      $buff .= $k . "=" . $v . "";
     }

   }
   $reqPar=NULL;
   if (strlen($buff) > 0)
   {
     $reqPar = substr($buff, 0, strlen($buff)-1);
   }

   return $reqPar;
  }

  /**
  *   作用:生成簽名
  */
  private function getSign($Obj)
  {

   foreach ($Obj as $k => $v)
   {
     $Parameters[$k] = $v;
   }
   //簽名步驟一:按字典序排序參數
   ksort($Parameters);
   $String = $this->formatBizQueryParaMap($Parameters, false);
   //echo '【string1】'.$String.'/br>';
   //簽名步驟二:在string后加入KEY
   $String = $String."key=".$this->apikey;
   //echo "【string2】".$String."/br>";
   //簽名步驟三:MD5加密
   $String = md5($String);
   //echo "【string3】 ".$String."/br>";
   //簽名步驟四:所有字符轉為大寫
   $result_ = strtoupper($String);
   //echo "【result】 ".$result_."/br>";
   return $result_;
  }
  //-----------
  private function http($url, $method='POST', $postfields = null, $headers = array())
  {
   header("Content-Type:text/html;charset=utf-8");
   $ch = curl_init();
   /* Curl settings */
   curl_setopt($ch, CURLOPT_URL, $url);
   curl_setopt($ch, CURLOPT_POSTFIELDS, "");
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https請求 不驗證證書和hosts
   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
   curl_setopt($ch, CURLOPT_TIMEOUT, 30);
   switch ($method){
     case 'POST':
      curl_setopt($ch,CURLOPT_POST, true);
      break;
   }
   curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
   curl_setopt($ch, CURLINFO_HEADER_OUT, true);
   $response = curl_exec($ch);
   $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); //返回請求狀態碼
   curl_close($ch);
   return array($http_code, $response);
  }

}

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

您可能感興趣的文章:
  • 微信企業轉賬之入口類分裝php代碼
  • php實現微信公眾號企業轉賬功能
  • PHP實現微信退款功能
  • PHP實現微信申請退款功能
  • PHP實現微信對賬單處理
  • php提取微信賬單的有效信息
  • 基于php的微信公眾平臺開發入門實例
  • php判斷頁面是否是微信打開的示例(微信打開網頁)
  • PHP對接微信公眾平臺消息接口開發流程教程
  • php實現微信企業轉賬功能

標簽:綏化 辛集 鄂州 崇左 廊坊 太原 衡陽 白銀

巨人網絡通訊聲明:本文標題《PHP APP微信提現接口代碼》,本文關鍵詞  PHP,APP,微信,提現,接口,代碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP APP微信提現接口代碼》相關的同類信息!
  • 本頁收集關于PHP APP微信提現接口代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: にされた乳揉み痴汉电车观看| 多肉的软文| 一本一道波多野结衣一区二区| 色花堂国产精品第一页| 被调教成玩物的黄蓉| 精品人妻无码一区二区三区四川人| 男人疯狂桶爽女人出白浆| 不要舔花心| 精品人妻无码一区二区三区伊人直播| 美女把尿口扒开让男人亲91网站| 久久国产精品61947| 皇上和太子一起c太子妃| 99精品在线观看视频| 裸体爆乳羞羞?网站视频| 国产极品精频在线观看| 北京爱情故事演员表| 日本丰满护士videossexhd| 又粗又黄又爽的在线观看| 丁香六月五月婷婷| 日本美女交配| 在线观看s色| 欧美xxxx喷潮| 亚洲精品久久mm131泳装图片| 小尤奈JK事件| 夜间免费禁用十大亏亏应用| 他添的我好湿好爽h视频| 亚洲 自拍 另类小说综合图区| 日韩精品久久久久久久玫瑰园 | 调教夹水果play文| 欧美蜜桃臀在线观看一区| 60分钟高清在线播放器订阅| 亚洲人一区二区| 边摸边吃奶边做爽免费视频99| 美女黄色片免费| 性欧美大战久久久久久久| 男人扒开女人腿下边添高潮视频| 加勒比一本大道香蕉大在线| 免费黄色在线网址| 巴马| 美女裸体秘?无遮挡网站悟空网站| 色和尚愉人一级A片|