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 相关文章推荐
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
Dec 06 PHP
php 小乘法表实现代码
Jul 16 PHP
php中计算未知长度的字符串哪个字符出现的次数最多的代码
Aug 14 PHP
php除数取整示例
Apr 24 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
Aug 18 PHP
php结合curl实现多线程抓取
Jul 09 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
Nov 11 PHP
PHP远程调试之XDEBUG
Dec 29 PHP
PHP的PDO操作简单示例
Mar 30 PHP
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
Dec 24 PHP
Yii2 如何在modules中添加验证码的方法
Jun 19 PHP
PHP命名空间(namespace)原理与用法详解
Dec 11 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通过curl模拟登陆DZ论坛
2015/05/11 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
2017/10/17 PHP
php把字符串指定字符分割成数组的方法
2018/03/12 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
用js重建星际争霸
2006/12/22 Javascript
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
JavaScript 学习历程和心得分享
2010/12/12 Javascript
JQuery事件e参数的方法preventDefault()取消默认行为
2013/09/26 Javascript
JavaScript精炼之构造函数 Constructor及Constructor属性详解
2015/11/05 Javascript
JavaScript浮点数及运算精度调整详解
2016/10/21 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
详解React之key的使用和实践
2018/09/29 Javascript
让IDE识别webpack的别名alias的实现方法
2020/05/06 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
vue实现两个区域滚动条同步滚动
2020/12/13 Vue.js
[01:03:13]VG vs Pain 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[47:43]Alliance vs KG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python查询阿里巴巴关键字排名的方法
2015/07/08 Python
Python实现Linux中的du命令
2017/06/12 Python
深入理解Python3 内置函数大全
2017/11/23 Python
python多进程提取处理大量文本的关键词方法
2018/06/05 Python
python实现n个数中选出m个数的方法
2018/11/13 Python
判断python对象是否可调用的三种方式及其区别详解
2019/01/31 Python
Python Excel处理库openpyxl使用详解
2019/05/09 Python
Django values()和value_list()的使用
2020/03/31 Python
毕业生自我推荐
2013/11/04 职场文书
学校运动会开幕演讲稿
2014/01/04 职场文书
品质主管岗位职责
2014/03/16 职场文书
关于安全演讲稿
2014/05/09 职场文书
另类冲刺标语
2014/06/24 职场文书
医院党员公开承诺书
2014/08/30 职场文书
上班迟到检讨书
2014/09/15 职场文书
大学新生军训自我鉴定
2014/09/18 职场文书
2015元旦节寄语
2014/12/08 职场文书
高一作文之乐趣
2019/11/21 职场文书