En tant que l'une des applications les plus populaires des médias sociaux, WeChat a attiré l'attention de nombreuses entreprises et développeurs. Parmi eux, les réponses sous forme d’images et de texte sont l’une des exigences les plus courantes dans les applications WeChat. Si vous utilisez PHP pour le développement WeChat et souhaitez implémenter des réponses graphiques et textuelles, cet article vous aidera à résoudre ce problème.
1. Comprendre les types de messages de la plateforme publique WeChat
Avant de commencer à présenter comment implémenter des réponses graphiques et textuelles en PHP, nous devons d'abord comprendre les types de messages de la plateforme publique WeChat. Les principaux types de messages sur la plateforme publique WeChat sont les suivants :
1. Message texte (texte)
2. Message photo (image)
3. Message vidéo (vidéo)
5. Message (courte vidéo)
6. Message de géolocalisation (localisation)
7. Message de lien (lien)
8. Message d'événement (événement)
$postData = $GLOBALS['HTTP_RAW_POST_DATA']; $postObj = simplexml_load_string($postData, "SimpleXMLElement", LIBXML_NOCDATA); $MsgType = trim($postObj->MsgType); if ($MsgType == 'event') { $Event = trim($postObj->Event); switch ($Event) { case 'subscribe'://关注事件 //TODO 你的处理逻辑 break; case 'unsubscribe'://取消关注事件 //TODO 你的处理逻辑 break; case 'CLICK'://自定义菜单点击事件 //TODO 你的处理逻辑 break; case 'VIEW'://自定义菜单跳转事件 //TODO 你的处理逻辑 break; case 'SCAN'://扫码事件 //TODO 你的处理逻辑 break; case 'LOCATION'://地理位置事件 //TODO 你的处理逻辑 break; case 'TEMPLATESENDJOBFINISH'://模板消息发送完成事件 //TODO 你的处理逻辑 break; default: break; } }
function sendNews($object, $newsArray) { $itemTpl = "<item> <Title><![CDATA[%s]]></Title> <Description><![CDATA[%s]]></Description> <PicUrl><![CDATA[%s]]></PicUrl> <Url><![CDATA[%s]]></Url> </item>"; $itemStr = ""; foreach ($newsArray as $item) { $itemStr .= sprintf($itemTpl, $item['Title'], $item['Description'], $item['PicUrl'], $item['Url']); } $xmlTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[news]]></MsgType> <ArticleCount>%s</ArticleCount> <Articles> $itemStr</Articles> </xml>"; $result = sprintf($xmlTpl, $object->FromUserName, $object->ToUserName, $time, count($newsArray)); return $result; }
Dans la plateforme publique WeChat, vous devez configurer votre propre adresse d'interface serveur à la plateforme publique et la connecter. Dans le développement de la plateforme publique WeChat, la configuration de l'adresse de l'interface est la première étape. Cette étape doit être complétée avant de passer à l'étape suivante. Une fois l'adresse de l'interface configurée, vous pouvez la tester via le test d'interface sur la plate-forme du fournisseur de plate-forme de la plate-forme publique WeChat pour vérifier si l'interface est connectée avec succès.
Après avoir terminé la configuration de l'adresse de l'interface, vous pouvez commencer à recevoir des messages poussés par la plateforme publique WeChat. Pour recevoir des messages envoyés par la plateforme publique WeChat, vous devez utiliser la fonction simplexml_load_string sous PHP pour les analyser et les convertir en objets correspondants à utiliser.
Le traitement des messages reçus peut être mis en œuvre selon les fonctions requises par le compte officiel. Si vous implémentez la fonction de réponse par image et texte, vous devez juger le message reçu. S'il s'agit d'un message d'événement, vous devez juger du type d'événement. S'il s'agit d'un événement préoccupant, vous devez répondre avec le message. image et texte correspondants ; s’il s’agit d’autres événements, vous n’avez besoin d’effectuer aucune opération.
La dernière étape consiste à convertir les résultats du traitement au format XML et à les renvoyer à la plateforme publique WeChat. En PHP, vous pouvez utiliser l'instruction echo pour afficher le résultat directement, ou vous pouvez renvoyer le résultat dans la fonction qui envoie le message, puis le générer.
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!