php版微信公众号接口实现发红包的方法


Posted in PHP onOctober 14, 2016

本文实例讲述了php版微信公众号接口实现发红包的方法。分享给大家供大家参考,具体如下:

最近接到一个任务,需要用微信来给用户自动发红包。要完成这个任务需要这么已经一些物料

微信商户号,已申请微信支付

微信商户号主体下面的微信公众号

先看一下效果图

php版微信公众号接口实现发红包的方法

php版微信公众号接口实现发红包的方法

php版微信公众号接口实现发红包的方法

只需要完成后面几步就可以了。

在微信公众号服务器上面调用红包代码

/*
**微信红包功能
*/
public function sendredpack(){
 $re_openid = $this->_pg('re_openid');
  $inputObj = new sendredpack_pub();
if(!$re_openid){
  return "微信红包功能,收红包用户不能为空";
}
  $inputObj->setParameter('re_openid',$re_openid); //收红包的用户的openid
  $inputObj->setParameter('send_name',"汽配一号铺"); //红包发送者名称
  $inputObj->setParameter('total_amount',"100"); //收红包的用户的金额,精确到分
  $inputObj->setParameter('total_num',"1"); //收红包的个数
  $inputObj->setParameter('wishing',"恭喜发财,谢谢支持,小小心意"); //收红包的用户的openid
  $inputObj->setParameter('client_ip',"121.40.157.243"); //调用接口的IP
  $inputObj->setParameter('act_name',"小邓感恩红包"); //红包主题
  $inputObj->setParameter('remark',"谢谢大家一路一来的支持"); //备注
  $response = $inputObj->getResult();
  return $response;
}

在微信支付辅助工具层加一个类,来完成红包功能

/**
* 微信发红包接口
**/
class sendredpack_pub extends Wxpay_client_pub
{
   function __construct() {
  //设置接口链接
   $this->url = "https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack";
  //设置curl超时时间
  $this->curl_timeout = WxPayConf_pub::CURL_TIMEOUT;
}
/**
* 生成接口参数xml
*/
function createXml()
{
  try
 {
  $this->parameters["mch_billno"] = WxPayConf_pub::MCHID.createUnique();//商户订单号
  $this->parameters["wxappid"] = WxPayConf_pub::APPID;//公众账号ID
  $this->parameters["mch_id"] = WxPayConf_pub::MCHID;//商户号
  $this->parameters["nonce_str"] = $this->createNoncestr();//随机字符串
  $this->parameters["sign"] = $this->getSign($this->parameters);//签名
  return $this->arrayToXml($this->parameters);
 }catch (SDKRuntimeException $e) {
   die($e->errorMessage());
 }
}
/**
* 作用:获取结果,使用证书通信
*/
function getResult()
{
  $this->postXmlSSL();
  $this->result = $this->xmlToArray($this->response);
  return $this->result;
}
}

然后部署返微信支付的服务上面,就可以了!!然后在做微信公众号(这个公众号)的服务上面加入“红包”。就能达到上面的效果了

根据文档进行开发

请您仔细阅读接口文档,参照文档进行开发,请注意,为了保证商户资金安全,接口强校验商户号与appid之间的绑定关系,以及appid与openid之间的对应关系(如果商户号与appid之间没有绑定关系,即appid没有申请微信支付或者申请微信支付商户号不匹配,或者openid归属appid错误,接口会返回报错)。

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

PHP 相关文章推荐
在windows iis5下安装php4.0+mysql之我见
Oct 09 PHP
收集的php编写大型网站问题集
Mar 06 PHP
深入解析php之apc
May 15 PHP
PHP取余函数介绍MOD(x,y)与x%y
May 15 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
PHP构造二叉树算法示例
Jun 21 PHP
PC端微信扫码支付成功之后自动跳转php版代码
Jul 07 PHP
PHP中in_array的隐式转换的解决方法
Mar 06 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 PHP
php命令行模式代码实例详解
Feb 26 PHP
PHP版微信第三方实现一键登录及获取用户信息的方法
Oct 14 #PHP
php版银联支付接口开发简明教程
Oct 14 #PHP
PHP二进制与字符串之间的相互转换教程
Oct 14 #PHP
php基于curl主动推送最新内容给百度收录的方法
Oct 14 #PHP
thinkphp分页实现效果
Oct 13 #PHP
php实现图片以base64显示的方法
Oct 13 #PHP
php实现将base64格式图片保存在指定目录的方法
Oct 13 #PHP
You might like
PHP用户指南-cookies部分
2006/10/09 PHP
PHP中遍历stdclass object的实现代码
2011/06/09 PHP
2017年最新PHP经典面试题目汇总(上篇)
2017/03/17 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
2018/06/13 PHP
Yaf框架封装的MySQL数据库操作示例
2019/03/06 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
jQuery中setTimeout的几种使用方法小结
2013/04/07 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
jquery实现鼠标滑过小图时显示大图的方法
2015/01/14 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
2015/03/13 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
jQuery实现网页顶部固定导航效果代码
2015/12/24 Javascript
JavaScript实现自动切换图片代码
2016/10/11 Javascript
seajs模块之间依赖的加载以及模块的执行
2016/10/21 Javascript
String字符串截取的四种方式总结
2016/11/28 Javascript
vue 巧用过渡效果(小结)
2018/09/22 Javascript
elementui之el-tebs浏览器卡死的问题和使用报错未注册问题
2019/07/06 Javascript
jQuery 选择方法及$(this)用法实例分析
2020/05/19 jQuery
JavaScript经典案例之简易计算器
2020/08/24 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
深入理解python中的atexit模块
2017/03/07 Python
Python AES加密模块用法分析
2017/05/22 Python
CentOS下Python3的安装及创建虚拟环境的方法
2018/11/28 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
日本无添加化妆品:HABA
2016/08/18 全球购物
世界上最好的旅行夹克:BauBax
2018/12/23 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
北京某科技有限公司C# .net笔试题
2014/09/27 面试题
党的群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
践行党的群众路线心得体会
2014/11/05 职场文书
施工员岗位职责范本
2015/04/11 职场文书
2016年党校科级干部培训班学习心得体会
2016/01/06 职场文书
解决Navicat for MySQL 连接 MySQL 报2005错误的问题
2021/05/29 MySQL
MySQL中in和exists区别详解
2021/06/03 MySQL
SSM项目使用拦截器实现登录验证功能
2022/01/22 Java/Android