php版微信自定义回复功能示例


Posted in PHP onDecember 05, 2016

本文实例讲述了php版微信自定义回复功能。分享给大家供大家参考,具体如下:

php版微信自定义回复功能示例

配置好服务器之后,就可以用php实现自动回复了。

index.php中的代码

<?php
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
  $wechatObj->valid();
}else{
  $wechatObj->responseMsg();
}
class wechatCallbackapiTest
{
  public function valid()
  {
    $echoStr = $_GET["echostr"];
    if($this->checkSignature()){
      header('content-type:text');
      echo $echoStr;
      exit;
    }
  }
  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 );
    if( $tmpStr == $signature ){
      return true;
    }else{
      return false;
    }
  }
  public function responseMsg()
  {
    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
    if (!empty($postStr)){
      $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); //获取数据
      $fromUsername = $postObj->FromUserName;
      $toUsername = $postObj->ToUserName;
      $keyword = trim($postObj->Content);
      $time = time();
      $textTpl = "<xml>
            <ToUserName><![CDATA[%s]]></ToUserName>
            <FromUserName><![CDATA[%s]]></FromUserName>
            <CreateTime>%s</CreateTime>
            <MsgType><![CDATA[%s]]></MsgType>
            <Content><![CDATA[%s]]></Content>
            <FuncFlag>0</FuncFlag>
            </xml>";
      if($keyword == "?" || $keyword == "?") //获取用户信息
      {
        $msgType = "text";
        $contentStr = date("Y-m-d H:i:s",time()); // 回复的内容
        $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
        echo $resultStr;
      }
    }else{
      echo "";
      exit;
    }
  }
}
?>

效果:

当用户输入?或者?就会获取当前时间

php版微信自定义回复功能示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php获得文件扩展名三法
Nov 25 PHP
PHP+JS无限级可伸缩菜单详解(简单易懂)
Jan 02 PHP
php实现的在线人员函数库
Apr 09 PHP
mysql_num_rows VS COUNT 效率问题分析
Apr 23 PHP
PHP 数组和字符串互相转换实现方法
Mar 26 PHP
PHP autoload与spl_autoload自动加载机制的深入理解
Jun 05 PHP
ThinkPHP模板之变量输出、自定义函数与判断语句用法
Nov 01 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
ThinkPHP中类的构造函数_construct()与_initialize()的区别详解
Mar 13 PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 PHP
PHP实现通过CURL上传文件功能示例
May 30 PHP
thinkPHP5框架auth权限控制类与用法示例
Jun 12 PHP
thinkPHP中配置的读取与C方法详解
Dec 05 #PHP
PHP实现微信JS-SDK接口选择相册及拍照并上传的方法
Dec 05 #PHP
thinkPHP js文件中U方法不被解析问题的解决方法
Dec 05 #PHP
thinkPHP中验证码的简单实现方法
Dec 05 #PHP
php获取当前月与上个月月初及月末时间戳的方法
Dec 05 #PHP
简述php环境搭建与配置
Dec 05 #PHP
php 变量引用与变量销毁机制详细介绍
Dec 05 #PHP
You might like
php 文件上传类代码
2011/08/06 PHP
简单的PHP缓存设计实现代码
2011/09/30 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
权威JavaScript 中的内存泄露模式
2007/08/13 Javascript
Javascript客户端将指定区域导出到Word、Excel的代码
2008/10/22 Javascript
也说JavaScript中String类的replace函数
2011/09/22 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
jQuery实现的仿百度分页足迹效果代码
2015/10/30 Javascript
学习使用jquery iScroll.js移动端滚动条插件
2020/03/24 Javascript
jQuery常用的一些技巧汇总
2016/03/26 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
把多个JavaScript函数绑定到onload事件处理函数上的方法
2016/09/04 Javascript
chrome浏览器如何断点调试异步加载的JS
2016/09/05 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
Nodejs实现短信验证码功能
2017/02/09 NodeJs
浅谈jquery fullpage 插件增加头部和版权的方法
2018/03/20 jQuery
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
浅谈layui 数据表格前后台传值的问题
2019/09/12 Javascript
微信小程序实现通讯录列表展开收起
2020/11/18 Javascript
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[01:07:02]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第三场 2月26日
2021/03/11 DOTA
python下函数参数的传递(参数带星号的说明)
2010/09/19 Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
2019/02/07 Python
python程序控制NAO机器人行走
2019/04/29 Python
python 动态调用函数实例解析
2019/10/21 Python
django3.02模板中的超链接配置实例代码
2020/02/04 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
python 弧度与角度互转实例
2020/04/15 Python
html5中为audio标签增加停止按钮动作实现方法
2013/01/04 HTML / CSS
李宁官方网店:中国运动品牌
2017/11/02 全球购物
HSRP的含义以及如何工作
2014/09/10 面试题
村捐赠仪式答谢词
2014/01/21 职场文书
党员干部群众路线个人整改措施
2014/09/18 职场文书
幼儿园卫生保健制度
2015/08/05 职场文书
单位提档介绍信
2015/10/22 职场文书