スマートフォンの人気とモバイルインターネットの開発により、WeChatは人々の日常生活の中で重要なソーシャルツールになりました。ますます多くの企業や個人が、WeChatのパブリックアカウントを使用して、ユーザーと製品の表示とのやり取りを実現することを望んでいます。この記事では、PHPを使用してWeChatの公式アカウントの開発とインターフェイスを接続する方法を紹介し、開発者が迅速に開始できるようにコード例を提供します。
WECHATの公式アカウントは、情報普及、サービスプロモーション、ユーザーインタラクションに使用されるWeChatプラットフォーム上のアカウントです。 2つの主なタイプがあります。サブスクリプション番号とサービス番号です。サブスクリプションアカウントは、主にニュースや記事などの情報表示に使用されます。サービスアカウントは企業に適しており、カスタムメニュー、Webページ認証などのより豊かな機能を提供します。
WeChatサーバーは、設定されたインターフェイスURLにGETリクエストを送信して、インターフェイスの有効性を確認します。以下はPHPコードの例です。
define("TOKEN", "your_token");
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$echostr = $_GET["echostr"];
$tmpArr = array(TOKEN, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if($tmpStr == $signature) {
echo $echostr;
} else {
echo "error";
}
ユーザーがフォローしたり、メッセージを送信したり、メニューをクリックしたりすると、WeChatサーバーは構成されたインターフェイスURLにメッセージを送信します。メッセージを受信して返信するためのサンプルコードは次のとおりです。
function responseText($toUsername, $fromUsername, $content){
$textTpl = "<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[%s]]></Content></xml>";
$time = time();
$result = sprintf($textTpl, $toUsername, $fromUsername, $time, $content);
echo $result;
}
$rawXml = file_get_contents("php://input");
$xml = simplexml_load_string($rawXml);
$toUsername = $xml->ToUserName;
$fromUsername = $xml->FromUserName;
$content = $xml->Content;
responseText($fromUsername, $toUsername, "あなたが送ったメッセージはです:" . $content);
この記事のコード例を介して、PHP開発とインターフェイスを使用してWeChatパブリックアカウントに接続することは複雑ではないことがわかります。実際の開発では、PHPの他のライブラリとフレームワークを使用して、開発プロセスをさらに簡素化できます。たとえば、Guzzleを使用してHTTP要求を処理するか、LaravelとSymfonyのフレームワークを使用して、より完全なアプリケーションシステムを構築します。この記事が、PHPおよびWECHATの公式アカウント開発の基本的な方法をよりよく理解するのに役立つことを願っています。