Maison > Article > développement back-end > Comment utiliser PHP pour implémenter la fonction d'envoi de messages modèles des comptes publics
Comment utiliser PHP pour implémenter la fonction d'envoi de modèles de messages des comptes publics
Ces dernières années, avec la croissance rapide du nombre d'utilisateurs des comptes publics WeChat, de plus en plus d'entreprises et de particuliers ont commencé à y prêter attention le développement des comptes publics WeChat. Parmi eux, les modèles de messages sont l'une des fonctions couramment utilisées dans le développement de comptes publics. Les messages modèles peuvent être utilisés pour envoyer des messages au format fixe aux utilisateurs et fournir divers services et informations. Cet article explique comment utiliser PHP pour implémenter la fonction d'envoi de messages modèles des comptes publics et fournit des exemples de code spécifiques.
Tout d'abord, afin de mettre en œuvre la fonction d'envoi de messages modèles du compte public, nous devons remplir les conditions suivantes :
function getAccessToken($appId, $appSecret) { $apiUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $appId . "&secret=" . $appSecret; $response = file_get_contents($apiUrl); $result = json_decode($response, true); // Check if access token is valid if(isset($result['access_token'])) { return $result['access_token']; } else { // Handle error return false; } } $accessToken = getAccessToken($appId, $appSecret);2. Envoyer un modèle de message Après avoir obtenu le jeton d'accès, nous pouvons utiliser le jeton pour envoyer le modèle de message. Voici un exemple de code pour envoyer des modèles de messages aux utilisateurs :
function sendTemplateMessage($accessToken, $openId, $templateId, $data) { $apiUrl = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . $accessToken; $postData = array( 'touser' => $openId, 'template_id' => $templateId, 'data' => $data ); $jsonData = json_encode($postData); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $apiUrl); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); $response = curl_exec($ch); curl_close($ch); // Handle response return $response; } // 要发送的模板消息的数据 $templateData = array( 'first' => array('value' => '您好', 'color' => '#173177'), 'keyword1' => array('value' => '模板消息', 'color' => '#173177'), 'keyword2' => array('value' => '2020-01-01', 'color' => '#173177'), 'remark' => array('value' => '感谢您的使用', 'color' => '#173177') ); $response = sendTemplateMessage($accessToken, $openId, $templateId, $templateData); // 处理发送结果 $result = json_decode($response, true); if($result['errcode'] == 0) { echo "模板消息发送成功!"; } else { echo "模板消息发送失败,请稍后重试。错误信息:" . $result['errmsg']; }Dans le code ci-dessus, nous définissons d'abord une fonction
sendTemplateMessage
pour envoyer des modèles de messages. Cette fonction doit transmettre le jeton d'accès, l'OpenID de l'utilisateur, l'ID du modèle et les données du message du modèle. sendTemplateMessage
函数用于发送模板消息。该函数需要传入Access Token、用户OpenID、模板ID和模板消息的数据。
模板消息的数据是一个关联数组,其中的字段名和模板中的变量名一一对应。
最后,我们通过调用sendTemplateMessage
Les données du modèle de message sont un tableau associatif, dans lequel les noms de champs correspondent aux noms de variables du modèle un à un.
Enfin, nous envoyons le modèle de message en appelant la fonction sendTemplateMessage
et traitons le résultat de l'envoi.
Résumé :
🎜Cet article présente comment utiliser PHP pour implémenter la fonction d'envoi de messages modèles des comptes publics WeChat. Tout d’abord, nous devons obtenir le jeton d’accès, puis utiliser le jeton pour envoyer le modèle de message. Grâce aux exemples de code ci-dessus, nous espérons aider les développeurs à mettre en œuvre avec succès la fonction d'envoi de messages modèles des comptes officiels. 🎜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!