


Implémenter l'interface API de l'enveloppe rouge PHP WeChat
Tout d'abord, permettez-moi de jeter un œil à ce formulaire :
Recommandations d'apprentissage associées : programmation php (Vidéo)
Sur la base de l'interface avancée de l'enveloppe rouge WeChat, nous avons développé la version PHP de l'interface API et effectuons maintenant l'analyse principale du code.
L'interface enveloppe rouge appelle le code de la requête. Tous les paramètres de la requête sont obligatoires et correspondent au document :
class Wxapi { private $app_id = 'wxXXXXXXXXXXXX'; //公众账号appid,首先申请与之配套的公众账号 private $app_secret = 'XXXXXXXXXXXXXXXXXXXXXXXX';//公众号secret,用户获取用户授权token private $app_mchid = 'XXXXXXXX';//商户号id function __construct(){ //do sth here.... } /** * 微信支付 * @param string $openid 用户openid */ public function pay($re_openid) { include_once('WxHongBaoHelper.php'); $commonUtil = new CommonUtil(); $wxHongBaoHelper = new WxHongBaoHelper(); $wxHongBaoHelper->setParameter("nonce_str", $this->great_rand());//随机字符串,丌长于 32 位 $wxHongBaoHelper->setParameter("mch_billno", $this->app_mchid.date('YmdHis').rand(1000, 9999));//订单号 $wxHongBaoHelper->setParameter("mch_id", $this->app_mchid);//商户号 $wxHongBaoHelper->setParameter("wxappid", $this->app_id); $wxHongBaoHelper->setParameter("nick_name", '红包');//提供方名称 $wxHongBaoHelper->setParameter("send_name", '红包');//红包发送者名称 $wxHongBaoHelper->setParameter("re_openid", $re_openid);//相对于医脉互通的openid $wxHongBaoHelper->setParameter("total_amount", 100);//付款金额,单位分 $wxHongBaoHelper->setParameter("min_value", 100);//最小红包金额,单位分 $wxHongBaoHelper->setParameter("max_value", 100);//最大红包金额,单位分 $wxHongBaoHelper->setParameter("total_num", 1);//红包収放总人数 $wxHongBaoHelper->setParameter("wishing", '感谢您参与红包派发活动,祝您新年快乐!');//红包祝福诧 $wxHongBaoHelper->setParameter("client_ip", '127.0.0.1');//调用接口的机器 Ip 地址 $wxHongBaoHelper->setParameter("act_name", '红包活动');//活劢名称 $wxHongBaoHelper->setParameter("remark", '快来抢!');//备注信息 $postXml = $wxHongBaoHelper->create_hongbao_xml(); $url = 'https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack'; $responseXml = $wxHongBaoHelper->curl_post_ssl($url, $postXml); //用作结果调试输出 //echo htmlentities($responseXml,ENT_COMPAT,'UTF-8'); $responseObj = simplexml_load_string($responseXml, 'SimpleXMLElement', LIBXML_NOCDATA); return $responseObj->return_code; }
Méthode d'obtention de chaîne aléatoire :
/** * 生成随机数 */ public function great_rand(){ $str = '1234567890abcdefghijklmnopqrstuvwxyz'; for($i=0;$i<30;$i++){ $j=rand(0,35); $t1 .= $str[$j]; } return $t1; }
Algorithme de signature :
/** 例如: appid: wxd111665abv58f4f mch_id: 10000100 device_info: 1000 Body: test nonce_str: ibuaiVcKdpRxkhJA 第一步:对参数按照 key=value 的格式,并按照参数名 ASCII 字典序排序如下: stringA="appid=wxd930ea5d5a258f4f&body=test&device_info=1000&mch_i d=10000100&nonce_str=ibuaiVcKdpRxkhJA"; 第二步:拼接支付密钥: stringSignTemp="stringA&key=192006250b4c09247ec02edce69f6a2d" sign=MD5(stringSignTemp).toUpperCase()="9A0A8659F005D6984697E2CA0A 9CF3B7" */ protected function get_sign(){ define('PARTNERKEY',"QSRXXXXXXXXXXXXXXXXXXXXX"); try { if (null == PARTNERKEY || "" == PARTNERKEY ) { throw new SDKRuntimeException("密钥不能为空!" . "<br>"); } if($this->check_sign_parameters() == false) { //检查生成签名参数 throw new SDKRuntimeException("生成签名参数缺失!" . "<br>"); } $commonUtil = new CommonUtil(); ksort($this->parameters); $unSignParaString = $commonUtil->formatQueryParaMap($this->parameters, false); $md5SignUtil = new MD5SignUtil(); return $md5SignUtil->sign($unSignParaString,$commonUtil->trimString(PARTNERKEY)); }catch (SDKRuntimeException $e) { die($e->errorMessage()); } }
Demande de CURL et envoi de certificat :
function curl_post_ssl($url, $vars, $second=30,$aHeader=array()) { $ch = curl_init(); //超时时间 curl_setopt($ch,CURLOPT_TIMEOUT,$second); curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1); //这里设置代理,如果有的话 curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); //cert 与 key 分别属于两个.pem文件 //请确保您的libcurl版本是否支持双向认证,版本高于7.20.1 curl_setopt($ch,CURLOPT_SSLCERT,dirname(__FILE__).DIRECTORY_SEPARATOR.'zhengshu'.DIRECTORY_SEPARATOR.'apiclient_cert.pem'); curl_setopt($ch,CURLOPT_SSLKEY,dirname(__FILE__).DIRECTORY_SEPARATOR.'zhengshu'.DIRECTORY_SEPARATOR.'apiclient_key.pem'); curl_setopt($ch,CURLOPT_CAINFO,dirname(__FILE__).DIRECTORY_SEPARATOR.'zhengshu'.DIRECTORY_SEPARATOR.'rootca.pem'); if( count($aHeader) >= 1 ){ curl_setopt($ch, CURLOPT_HTTPHEADER, $aHeader); } curl_setopt($ch,CURLOPT_POST, 1); curl_setopt($ch,CURLOPT_POSTFIELDS,$vars); $data = curl_exec($ch); if($data){ curl_close($ch); return $data; } else { $error = curl_errno($ch); //echo "call faild, errorCode:$error\n"; curl_close($ch); return false; } }
Fichier d'entrée :
@require "pay.php"; //获取用户信息 $get = $_GET['param']; $code = $_GET['code']; //判断code是否存在 if($get=='access_token' && !empty($code)){ $param['param'] = 'access_token'; $param['code'] = $code; $packet = new Packet(); //获取用户openid信息 $userinfo = $packet->_route('userinfo',$param); if(empty($userinfo['openid'])){ exit("NOAUTH"); } //调取支付方法 $packet->_route('wxpacket',array('openid'=>$userinfo['openid'])); }else{ $packet->_route('userinfo'); }
Recommandations d'apprentissage associées : Vidéo de programmation
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quelle est la quantité maximale d’enveloppes rouges WeChat pouvant être envoyées ? Il existe une limite supérieure au nombre d'enveloppes rouges envoyées dans WeChat, et certains utilisateurs ne connaissent pas clairement le nombre maximum d'enveloppes rouges pouvant être envoyées sur WeChat. Le montant maximum aux dates non spéciales est de 200. Vient ensuite une introduction au nombre maximum d'enveloppes rouges que l'éditeur apporte aux utilisateurs. Les utilisateurs intéressés peuvent venir y jeter un œil ! Tutoriel d'utilisation de WeChat Comment définir l'image d'arrière-plan du statut WeChat Réponse : 200 yuans Détails : 1. La limite supérieure du montant de l'enveloppe rouge WeChat : 200. Chaque personne ne peut envoyer qu'un maximum de 200 yuans dans des enveloppes rouges WeChat à chaque fois. 2. Montant spécial de l'enveloppe rouge : le 20 mai de chaque année, les utilisateurs peuvent envoyer des enveloppes rouges avec une limite supérieure de 520 yuans.

Avec la popularité du courrier électronique dans notre quotidien, l’envoi d’e-mails est devenu une fonctionnalité essentielle dans de nombreuses applications. En tant que langage de développement Web populaire, PHP fournit également une interface API d'envoi d'e-mails correspondante. Cet article présentera l'interface API d'envoi d'e-mails en PHP aux débutants et aux développeurs, notamment comment configurer le serveur de messagerie, comment utiliser les fonctions de messagerie intégrées de PHP et comment utiliser une bibliothèque d'envoi d'e-mails tierce. 1. Configurez le serveur de messagerie Avant d'utiliser PHP pour envoyer du courrier, vous devez d'abord configurer un serveur SMTP.

L'enveloppe rouge WeChat actuelle ne prend pas en charge le retour manuel. Modèle applicable du tutoriel : iPhone13 Système : iOS15.5 version : WeChat 8.0.19 Analyse 1 L'enveloppe rouge WeChat actuelle ne prend pas en charge le retour manuel Pour l'enveloppe rouge WeChat qui n'a pas été réclamée, le système WeChat la renverra automatiquement. le compte d'origine après 24 heures, donc quand Si nous souhaitons retourner l'enveloppe rouge après l'avoir reçue, tant que nous ne l'acceptons pas, elle sera automatiquement restituée après 24 heures. Supplément : Comment retourner un transfert WeChat 1 Cliquez sur le transfert qui doit être restitué sur l'interface de chat WeChat. 2Dans l'interface des détails du transfert, cliquez sur l'option de remboursement. 3. Dans la nouvelle fenêtre contextuelle qui apparaît, cliquez à nouveau sur Retour. Résumé/Remarques : L'enveloppe rouge WeChat actuelle ne prend pas en charge le retour manuel. Lorsque nous recevons l'enveloppe rouge, tant que nous ne l'acceptons pas, elle sera retournée après 24 heures.

Site Web d'interface API gratuite : 1. UomgAPI : une plate-forme qui fournit des services API gratuits stables et rapides, avec plus de 100 interfaces API ; 2. free-api : fournit plusieurs interfaces API gratuites ; 3. API JSON : fournit une interface API de données gratuite ; . AutoNavi Open Platform : fournit des interfaces API liées aux cartes ; 5. Reconnaissance faciale Face++ : fournit des interfaces API liées à la reconnaissance faciale ; 6. Speed Data : fournit plus d'une centaine d'interfaces API gratuites, adaptées à divers besoins dans le cas des données ; sources ; 7. Données agrégées, etc.

Une interface API est une spécification d'interaction entre des composants logiciels et est utilisée pour mettre en œuvre la communication et l'échange de données entre différentes applications ou systèmes. L'interface API agit comme un « traducteur », convertissant les instructions du développeur en langage informatique afin que les applications puissent fonctionner ensemble. Ses avantages incluent un partage pratique des données, un développement simplifié, des performances améliorées, une sécurité renforcée, une productivité et une interopérabilité améliorées.

Il existe différents types d'interfaces API, notamment l'API RESTful, l'API SOAP, l'API GraphQL, etc. L'API RESTful communique via le protocole HTTP, avec une conception simple et efficace, qui est le style de conception actuel de l'API Web. L'API SOAP est basée sur XML, se concentre sur l'interopérabilité entre les langues et les plates-formes et est principalement utilisée dans les grandes entreprises et les agences gouvernementales. L'API GraphQL est un nouveau langage de requête et environnement d'exécution qui prend en charge les requêtes et réponses de données flexibles.

1. Recherchez l'applet WeChat : 2. Cliquez pour rechercher [Tencent Report Acceptance Center]. 3. Cliquez sur l'option de fraude sur Internet. 4. Saisissez les informations pertinentes et les captures d'écran. Instructions pour l'enveloppe rouge WeChat : 1. Si l'enveloppe rouge WeChat n'est pas récupérée dans les 24 heures, elle sera renvoyée directement. 2. Les enveloppes rouges WeChat sont collectées par d'autres et ne peuvent pas être retournées par vous ;

Avec la popularité croissante des applications Web, les API (Application Programming Interfaces) deviennent de plus en plus importantes et jouent un rôle de plus en plus important dans le développement Web. WebAPI est une technologie qui permet aux utilisateurs d'accéder à des applications via Internet. Il s'agit d'un outil de base pour combiner différentes applications. PHP est un langage de programmation largement utilisé, notamment dans le domaine du développement web. Les développeurs peuvent permettre à d'autres applications d'utiliser leurs fonctionnalités d'application en développant des interfaces API PHP. Pour y parvenir
