WeChat はソーシャル メディアで最も人気のあるアプリケーションの 1 つとして、多くの企業や開発者の注目を集めています。その中でも、画像とテキストの返信は、WeChat アプリケーションで最も一般的な要件の 1 つです。 WeChat 開発に PHP を使用していて、グラフィックとテキストの返信を実装したい場合は、この記事がこの問題の解決に役立ちます。
1. WeChat パブリック プラットフォームのメッセージ タイプを理解する
PHP でグラフィックとテキストの返信を実装する方法を紹介する前に、まず WeChat パブリック プラットフォームのメッセージ タイプを理解する必要があります。 WeChat パブリック プラットフォームのメッセージ タイプは主に次のとおりです:
1. テキスト メッセージ (テキスト)
2. 画像メッセージ (画像)
3. 音声メッセージ (音声)
4 . ビデオ メッセージ (ビデオ)
5. ショート ビデオ メッセージ (ショート ビデオ)
6. 地理的位置メッセージ (場所)
7. リンク メッセージ (リンク)
8. イベント メッセージ (イベント)
このうち、使用する必要があるのはイベント メッセージとグラフィック メッセージです。
2. イベント メッセージの実装
イベント メッセージとは、ユーザーが公式アカウントで特定の動作を実行した後、公式アカウントがイベント プッシュ メッセージを受信することを指します。これには、フォロー イベント、クリック メニュー イベント、QR コード スキャン イベントなど、さまざまな種類のイベントが含まれます。
PHP では、イベント メッセージを処理するには、まず受信したメッセージを解析してメッセージ タイプを判断し、それからそれに応じて処理する必要があります。コードは次のとおりです:
$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; } }
3. グラフィック メッセージとテキスト メッセージの実装
イベント メッセージを理解したら、次にグラフィック メッセージとテキスト メッセージの実装に焦点を当てます。グラフィック メッセージングとは、パブリック アカウントが一連のグラフィック メッセージをユーザーに送信することによって情報を送信する方法を指します。 PHP でグラフィック メッセージを実装するには、まず送信するグラフィック情報を準備し、次に WeChat パブリック プラットフォーム インターフェイスを呼び出してデータを XML 形式に変換してから送信する必要があります。コードは次のとおりです。
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; }
上記の関数は、グラフィック メッセージ データを XML 形式に変換して返します。メッセージの種類が異なれば、必要な XML 形式も異なることに注意してください。テキスト メッセージを送信する場合は、メッセージ タイプをテキストに変更し、メッセージ本文を記事からコンテンツに変更する必要があります。
4. グラフィック メッセージの実装手順
1. WeChat パブリック プラットフォームでのインターフェイス アドレスの設定
WeChat パブリック プラットフォームでは、独自のサーバー インターフェイス アドレスをパブリックプラットフォームに接続してください。 WeChat パブリック プラットフォームの開発では、インターフェイス アドレスの構成が最初のステップであり、次のステップに進む前にこのステップを完了する必要があります。インターフェイス アドレスを構成した後、WeChat パブリック プラットフォームのプラットフォーム プロバイダー プラットフォームのインターフェイス テストを通じてテストして、インターフェイスが正常に接続されているかどうかを確認できます。
2. WeChat パブリック プラットフォームによってプッシュされたメッセージを受信する
インターフェイス アドレスの構成が完了したら、WeChat パブリック プラットフォームによってプッシュされたメッセージの受信を開始できます。 WeChat パブリック プラットフォームによってプッシュされたメッセージを受信するには、PHP で simplexml_load_string 関数を使用してメッセージを解析し、対応する操作用オブジェクトに変換する必要があります。
3. 受信メッセージの処理
受信メッセージの処理は、パブリックアカウントに必要な機能に応じて実装できます。画像とテキストの返信機能を実装している場合は、受信したメッセージを判断する必要があり、イベントメッセージの場合は、イベントの種類を判断する必要があり、気になるイベントの場合は、返信する必要があります。対応する画像とテキスト、その他のイベントの場合は何も操作する必要はありません。
4. 結果を WeChat パブリック プラットフォームに送り返す
最後のステップは、処理結果を XML 形式に変換し、WeChat パブリック プラットフォームに送り返すことです。 PHP では、echo ステートメントを使用して結果を直接出力することも、メッセージを送信する関数で結果を返してから出力することもできます。
5. 概要
この記事では、PHP が画像とテキストの返信機能を実装する方法を簡単に紹介します。この記事を通じて、WeChat パブリック プラットフォームによってプッシュされたメッセージを受信する方法、メッセージを解析する方法、メッセージを処理する方法、処理結果を XML 形式に変換して WeChat パブリック プラットフォームに送り返す方法、およびその他の知識ポイントを学ぶことができます。これらの知識ポイントは PHP WeChat 開発者にとって非常に重要です。PHP WeChat を開発している場合、この記事は非常に役立ちます。
以上がPHP WeChat 開発: グラフィックとテキストの返信を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

Dreamweaver Mac版
ビジュアル Web 開発ツール

ホットトピック



