手机版

Thinkphp 5.0实现微信企业付款到零钱

时间:2021-08-29 来源:互联网 编辑:宝哥软件园 浏览:

本文实例为大家分享了Thinkphp 5.0微信企业付款到零钱的具体代码,供大家参考,具体内容如下

【微信支付】企业付款到零钱:官方文档

注意:1,证书路径一定要写绝对路径,且使用函数getcwd()。

函数转移($data){ //支付信息$ wxchat[' appid ']=wxpayconfig : $ appid;$ wx图表[' MC hid ']=wxpayconfig : $ MC hid;$ web数据=数组(' mch _ appid '=$ wxchat[' appid '],//商户账号appid ' MC hid '=$ wx图表[' MC hid '],//商户号nonce_str'=md5(time()),//随机字符串partner_trade_no'=date('YmdHis '),//商户订单号,需要唯一openid'=$data['openid'],//转账用户的openid 'check_name'='NO_CHECK ',//OPTION_CHECK不强制校验真实姓名,强制检查:强制否_检查:"金额"=$data["货币"]*100,//付款金额单位为分desc'='微信企业付款到零钱',//企业付款描述信息spbill_create_ip'=request()-ip(),//获取IP);foreach($ web数据为$ k=$ v){ $ tarr[]=$ k . '=' .五美元;} sort($ tarr);$符号=内爆($ tarr ' ');$符号=' key='。wxpayconfig : $ key$ web data[' sign ']=strtopher(MD5($ sign));$ wget=$ this-ArrToXml($ web data);//数组转XML $ pay _ URL=' https://API。妇幼保健。微信。QQ。com/mmpaymktttransfers/promotion/transfers ';//api地址$res=$this-postData($pay_url,$ wget);//发送数据if(!$ RES){ 0返回数组(“状态”=1,“消息”=)无法连接服务器');} $ content=SimpleXML _ load _ string($ RES,' SimpleXMLElement ',LIBXML _ NOCDATA);if(strval($ content-return _ code)=' FAIL '){ return array(' status '=1,' msg '=strval($ content-return _ msg));} if(str val($ content-result _ code)=' FAIL '){ return array(' status '=1,' msg'=strval($content-err_code),' : ' .str val($ 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返回$ rdata}//数组转可扩展置标语言函数ArrToXml($arr) { if(!is _ array($ arr)| | count($ arr)=0)返回"";$ XML=“XML”;foreach($ arr as $ key=$ val){ if(is _ numeric($ val)){ $ XML .=''.$key .$瓦尔。'/'.$key .}else{ $xml .=''.$key .[CData[1 .$瓦尔。']]/'.$key .} } $xml .='/XML ';返回$ xml}//发送数据函数postData($url,$ post field){ $ ch=curl _ init();$ params[CURLOPT _ URL]=$ URL;//请求全球资源定位器(统一资源定位符)地址$ params[CURLOPT _ HEADER]=false;//是否返回响应头信息$ params[CURLOPT _ RETURNTRANSFER]=true;//是否将结果返回$ params[CURLOPT _ follow location]=true;//是否重定向$ params[CURLOPT _ POST]=true;$ params[CURLOPT _ PostFields]=$ PostFields;$ params[CURLOPT _ SSL _ VERIFYPEER]=false;$ params[CURLOPT _ SSL _ VERIFYHOST]=false;//以下是证书相关代码$ params[CURLOPT _ SSLCERTYPE]=' PEM ';$ params[CURLOPT _ SSLCERT]=getcwd()./插件/支付/微信/证书/API client _ cert。PEM ';//绝对路径$ params[CURLOPT _ SSLKEYTYPE]=' PEM ';$params[CURLOPT_SSLKEY]=getcwd()./插件/支付/微信/证书/API client _ key。PEM ';//绝对路径curl_setopt_array($ch,$ params);//传入卷曲参数$ content=curl _ exec($ ch);//执行curl _ close($ ch);//关闭连接返回$ content}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

版权声明:Thinkphp 5.0实现微信企业付款到零钱是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。

相关文章推荐