您当前的位置: 首页 > 知识百科 > php的微信公众号接口发红包代码

php的微信公众号接口发红包代码

时间:2023-07-01 14:05 阅读数:17 人阅读 分类:知识百科

  从微信公众的开发以来,微信的功能不断地增多,微信公众号服务号可以实现许多的功能。如果我们要发红包那么必须要服务号了,否则无法实现此功能了,下面小编就给大家介绍一下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 = "api.mch.weixin.qq/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的微信公众号接口发红包代码呢?这样如此全面、有效、简单的恢复方法,你学会了吗?更多更详细微信公众号素材内容,请持续关注微素达。

相关推荐:

微信关注按钮代码怎么设置?

微信公众号发红包规则有哪些?

如何运营微信公众号?需要做好哪些准备工作?