Maison  >  Article  >  développement back-end  >  L'interface de compte public PHP WeChat implémente la méthode d'envoi d'enveloppes rouges

L'interface de compte public PHP WeChat implémente la méthode d'envoi d'enveloppes rouges

墨辰丷
墨辰丷original
2018-06-01 09:32:471993parcourir

Cet article présente principalement la méthode d'envoi d'enveloppes rouges via l'interface du compte public WeChat dans la version PHP. Il analyse la méthode d'appel de l'interface et les précautions d'utilisation associées du compte public WeChat dans la version PHP avec des exemples. reportez-vous à ce qui suit

L'exemple de cet article décrit la méthode d'envoi d'enveloppes rouges via la version PHP de l'interface de compte public WeChat. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Récemment, j'ai reçu une tâche qui m'obligeait à utiliser WeChat pour envoyer automatiquement des enveloppes rouges aux utilisateurs. Pour accomplir cette tâche, vous avez besoin de certains matériaux

Compte marchand WeChat et avez demandé le paiement WeChat

Compte officiel WeChat sous le corps principal de WeChat compte marchand

Jetez d'abord un oeil aux rendus

Il suffit de suivre les étapes suivantes.

Appelez le code de l'enveloppe rouge sur le serveur du compte officiel WeChat

/*
**微信红包功能
*/
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;
}

Ajoutez une classe à la couche d'outils auxiliaires de paiement WeChat pour terminer la fonction enveloppe rouge

/**
* 微信发红包接口
**/
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;
}
}

Puis déployez-la à nouveau sur le service de paiement WeChat, et c'est tout ! ! Ajoutez ensuite des « enveloppes rouges » au service de création d'un compte officiel WeChat (ce compte officiel). L'effet ci-dessus peut être obtenu

Développer selon le document

Veuillez lire attentivement le document d'interface et vous référer au document pour le développement. notez que, afin d'assurer la sécurité des fonds du commerçant, l'interface vérifie fortement la relation contraignante entre le numéro du commerçant et l'appid, ainsi que la relation correspondante entre l'appid et l'openid (s'il n'y a pas de relation contraignante entre le numéro du commerçant et l'appid , c'est-à-dire que l'appid n'a pas demandé le paiement WeChat ou si le numéro de commerçant demandé pour le paiement WeChat ne correspond pas, ou si l'openid appartient au mauvais appid, l'interface renverra une erreur).

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Utilisation de l'UUID pour implémenter des opérations de table de données dans le framework PHP Laravel

Implémentation PHP+mysql+ajax Méthode de salle de discussion légère

phpMéthode de mise en œuvre de la soumission de formulaires inter-domaines

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn