PHP对接微信公众号,实现自动回复,关键词回复,自动搜索影视功能
<?php
// 定义常量TOKEN,这个值应该与您在微信公众平台设置的Token一致
define('WXNAME', '煜梦影视');
define('SOUWD', 'http://vip.jhwsy.cn/search.php?wd=');//煜梦影视搜索接口
define('KEY', 'Gg6cyYj8hseyphc366DyfjhookkrtygbkeyU');//煜梦影视授权标识
define('TOKEN', 'yumeng');//微信中的token
class WechatCallbackApiTest
{
// 验证签名的方法
private function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
return ($tmpStr == $signature);
}
// 处理微信发来的消息
public function responseMsg()
{
// 首先验证签名
if(!$this->checkSignature()){
exit('Invalid request');
}
$postStr = file_get_contents("php://input");
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$msgType = (string)$postObj->MsgType;
// 根据消息类型进行处理
$knownLink = SOUWD;
$my=KEY;
$name=WXNAME;
switch ($msgType) {
case 'text':
$content = (string)$postObj->Content;
// 在这里处理文本消息
if ($content == "菜单") {
// 如果发送的关键词是"关键词1",则回复关键词1对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[当前为"菜单"模式!
现在给你介绍公众号的功能!
【规则①】:给我发送影视名称例如:"西游记"我们将为您搜索这个影视
【规则②】:发送关键词可以获得对应的功能,关键词如下:"菜单","客服","情侣飞行棋","我要识别码","爱坤小游戏","摸头神器","微信对话恶搞","烟花模拟器","装逼神器","授权码"
]]></Content>
</xml>';
} else if ($content == "客服") {
// 如果发送的关键词是"关键词2",则回复关键词2对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[微信人工客服:wsyhacker
有不懂的加微信询问!
]]></Content>
</xml>';
}else if ($content == "授权码") {
// 如果发送的关键词是"关键词2",则回复关键词2对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA['.$my.']]></Content>
</xml>';
}else if ($content == "我要识别码") {
// 如果发送的关键词是"关键词2",则回复关键词2对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[识别码:606060]]></Content>
</xml>';
}else if ($content == "情侣飞行棋") {
// 如果发送的关键词是"关键词2",则回复关键词2对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[<a href="http://jhwsy.cn/hacker/wxfh/fxq.php">情侣飞行棋→点击查看</a>]]></Content>
</xml>';
}else if ($content == "爱坤小游戏") {
// 如果发送的关键词是"关键词2",则回复关键词2对应的消息
$responseXml = '<xml>
<ToUserName><![CDATA[' . $postObj->FromUserName . ']]></ToUserName>
<FromUserName><![CDATA[' . $postObj->ToUserName . ']]></FromUserName>
<CreateTime>' . time() . '</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[<a href="http://jhwsy.cn/game/cxk/">蔡徐坤跳跳乐→点击查看</a>
<a href="http://jhwsy.cn/game/akxxl/">蔡徐坤消消乐→点击查看</a>
<a href="http://jhwsy.cn/game/aklq/">蔡徐坤消打篮球→点击查看</a>]]></Content>
</xml>';
}else if ($content == "微信对话恶搞") {
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。