PHP编程实现微信企业向用户付款的方法示例


Posted in PHP onJuly 26, 2017

本文实例讲述了PHP编程实现微信企业向用户付款的方法。分享给大家供大家参考,具体如下:

<?php
header('content-type:text/html;charset=utf-8');
$data['mch_appid']='##################';//商户的应用appid
$data['mchid']='################';//商户ID
$data['nonce_str']='123456';//unicode();//这个据说是唯一的字符串下面有方法
$data['partner_trade_no']='LB123456';//.time();//这个是订单号。
$data['openid']='123';//这个是授权用户的openid。。这个必须得是用户授权才能用
$data['check_name']='NO_CHECK';//这个是设置是否检测用户真实姓名的
$data['re_user_name']='######';//用户的真实名字
$data['amount']='1';//提现金额
$data['desc']='服务费';//订单描述
$data['spbill_create_ip']=$_SERVER['SERVER_ADDR'];//这个最烦了,,还得获取服务器的ip
$secrect_key='#################################';///这个就是个API密码。32位的。。随便MD5一下就可以了
$data=array_filter($data);
ksort($data);
$str='';
foreach($data as $k=>$v) {
  $str.=$k.'='.$v.'&';
}
$str.='key='.$secrect_key;
$data['sign']=md5($str);
$xml=arraytoxml($data);
// echo $xml;
$url='https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers';
$res=curl($xml,$url);
$return=xmltoarray($res);
print_r($return);
// echo getcwd().'/cert/apiclient_cert.pem';die;
function unicode() {
  $str = uniqid(mt_rand(),1);
  $str=sha1($str);
  return md5($str);
}
function arraytoxml($data){
  $str='<xml>';
  foreach($data as $k=>$v) {
    $str.='<'.$k.'>'.$v.'</'.$k.'>';
  }
  $str.='</xml>';
  return $str;
}
function xmltoarray($xml) {
   //禁止引用外部xml实体
  libxml_disable_entity_loader(true);
  $xmlstring = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);
  $val = json_decode(json_encode($xmlstring),true);
  return $val;
}
function curl($param="",$url) {
  $postUrl = $url;
  $curlPost = $param;
  $ch = curl_init();                   //初始化curl
  curl_setopt($ch, CURLOPT_URL,$postUrl);         //抓取指定网页
  curl_setopt($ch, CURLOPT_HEADER, 0);          //设置header
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);      //要求结果为字符串且输出到屏幕上
  curl_setopt($ch, CURLOPT_POST, 1);           //post提交方式
  curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);      // 增加 HTTP Header(头)里的字段
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);    // 终止从服务端进行验证
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  curl_setopt($ch,CURLOPT_SSLCERT,getcwd().'/cert/apiclient_cert.pem'); //这个是证书的位置
  curl_setopt($ch,CURLOPT_SSLKEY,getcwd().'/cert/apiclient_key.pem'); //这个也是证书的位置
  $data = curl_exec($ch);                 //运行curl
  curl_close($ch);
  return $data;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
抓取YAHOO股票报价的类
May 15 PHP
使用php来实现网络服务
Sep 15 PHP
PHP显示今天、今月、上月、今年的起点/终点时间戳的代码
May 25 PHP
关于js和php对url编码的处理方法
Mar 04 PHP
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法
May 04 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
Jun 12 PHP
php函数serialize()与unserialize()用法实例
Nov 06 PHP
php使用正则表达式进行字符串搜索的方法
Mar 23 PHP
php使用正则验证中文
Apr 06 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
Jun 20 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
Aug 04 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
Jul 26 PHP
浅谈Yii乐观锁的使用及原理
Jul 25 #PHP
PHP异常处理定义与使用方法分析
Jul 25 #PHP
PHP实现防盗链的方法分析
Jul 25 #PHP
浅谈PHP发送HTTP请求的几种方式
Jul 25 #PHP
php 删除指定文件夹的实例讲解
Jul 25 #PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 #PHP
PHP实现时间比较和时间差计算的方法示例
Jul 24 #PHP
You might like
php中函数前加&amp;符号的作用分解
2014/07/08 PHP
WordPress中&quot;无法将上传的文件移动至&quot;错误的解决方法
2015/07/01 PHP
简单谈谈 php 文件锁
2017/02/19 PHP
使用js获取地址栏中传递的值
2013/07/02 Javascript
判定是否原生方法的JS代码
2013/11/12 Javascript
关于Javascript 对象(object)的prototype
2014/05/09 Javascript
js拆分字符串并将分割的数据放到数组中的方法
2015/05/06 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
HTML5游戏引擎LTweenLite实现的超帅动画效果(附demo源码下载)
2016/01/26 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
原生js编写基于面向对象的分页组件
2016/12/05 Javascript
JavaScript Base64 作为文件上传的实例代码解析
2017/02/14 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
详解webpack 热更新优化
2018/09/13 Javascript
vue组件实践之可搜索下拉框功能
2018/11/25 Javascript
浅谈在Vue.js中如何实现时间转换指令
2019/01/06 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
Python 分析Nginx访问日志并保存到MySQL数据库实例
2014/03/13 Python
Python合并多个装饰器小技巧
2015/04/28 Python
python使用socket连接远程服务器的方法
2015/04/29 Python
Python与人工神经网络:使用神经网络识别手写图像介绍
2017/12/19 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
Python下利用BeautifulSoup解析HTML的实现
2020/01/17 Python
纯CSS实现预加载动画效果
2017/09/06 HTML / CSS
HTML5实现一个能够移动的小坦克示例代码
2013/09/02 HTML / CSS
微信小程序“圣诞帽”的实现思路详解
2017/12/28 HTML / CSS
浅谈基于Canvas的手绘风格图形库Rough.js
2018/03/19 HTML / CSS
英国知名的护肤彩妆与时尚配饰大型综合零售电商:Unineed
2016/11/21 全球购物
日本整理专家Marie Kondo的官方在线商店:KonMari
2020/06/29 全球购物
代办委托书怎么写
2014/08/01 职场文书
小学公民道德宣传日活动总结
2015/03/23 职场文书
劳动者解除劳动合同通知书
2015/04/16 职场文书
用基于python的appium爬取b站直播消费记录
2021/04/17 Python
redis实现共同好友的思路详解
2021/05/26 Redis
讨论nginx location 顺序问题
2022/05/30 Servers