php微信开发之音乐回复功能


Posted in PHP onJune 14, 2018

本文实例为大家分享了php微信音乐回复功能的具体代码,供大家参考,具体内容如下

<?php
/**
 * wechat php test
 */

//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
//$wechatObj->valid();
$wechatObj->responseMsg();
class wechatCallbackapiTest
{
 public function valid()
 {
  $echoStr = $_GET["echostr"];

  //valid signature , option
  if($this->checkSignature()){
   echo $echoStr;
   exit;
  }
 }

 public function responseMsg()
 {
  //get post data, May be due to the different environments
  $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];

  //extract 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(!empty( $keyword ))
    {
     $msgType = "text";
     if($keyword=="1"){
     $contentStr = "qiphon";}
     if($keyword=="2"){
     $contentStr = "最新资讯:《环境违法行为举报奖励办法》";}
     if($keyword=="3"){
     $contentStr = "31离婚协议\n32租房合同\n33交通事故协议书";}     
     $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
     echo $resultStr;
    }else{
     echo "Input something...";
    }

  }else {
   echo "";
   exit;
  }
 }

 private function checkSignature()
 {
  $signature = $_GET["signature"];
  $timestamp = $_GET["timestamp"];
  $nonce = $_GET["nonce"]; 

  $token = TOKEN;
  $tmpArr = array($token, $timestamp, $nonce);
  sort($tmpArr);
  $tmpStr = implode( $tmpArr );
  $tmpStr = sha1( $tmpStr );

  if( $tmpStr == $signature ){
   return true;
  }else{
   return false;
  }
 }
}

?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP安装全攻略:APACHE
Oct 09 PHP
配置支持SSI
Nov 25 PHP
php学习之 循环结构实现代码
Jun 09 PHP
php轻松实现文件上传功能
Mar 03 PHP
PHP中include/require/include_once/require_once使用心得
Aug 28 PHP
php基于单例模式封装mysql类完整实例
Oct 18 PHP
thinkPHP中验证码的简单实现方法
Dec 05 PHP
php使用curl代理实现抓取数据的方法
Feb 03 PHP
php基于数组函数实现关联表的编辑操作示例
Jul 04 PHP
python进程与线程小结实例分析
Nov 11 PHP
CodeIgniter框架实现的整合Smarty引擎DEMO示例
Mar 28 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
Apr 14 PHP
php微信开发之关键词回复功能
Jun 13 #PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
Jun 13 #PHP
微信公众号开发之获取位置信息php代码
Jun 13 #PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
Jun 13 #PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
Jun 13 #PHP
thinkphp5.1 文件引入路径问题及注意事项
Jun 13 #PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 #PHP
You might like
PHP has encountered an Access Violation
2007/01/15 PHP
一个比较简单的PHP 分页分组类
2009/12/10 PHP
PHP的引用详解
2015/02/22 PHP
php浏览历史记录的方法
2015/03/10 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
PHP基于关联数组20行代码搞定约瑟夫问题示例
2017/11/07 PHP
javascript 检测浏览器类型和版本的代码
2009/09/15 Javascript
jQuery setTimeout()函数使用方法
2013/04/07 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
JavaScript实现带缓冲效果的随屏滚动漂浮广告代码
2015/11/06 Javascript
使用JavaScript实现弹出层效果的简单实例
2016/05/31 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
微信小程序上传图片到服务器实例代码
2017/11/07 Javascript
微信小程序倒计时功能实现代码
2017/11/09 Javascript
详解webpack-dev-server的简单使用
2018/04/02 Javascript
Vue点击切换颜色的方法
2018/09/13 Javascript
使用vue根据状态添加列表数据和删除列表数据的实例
2018/09/29 Javascript
vuex实现及简略解析(小结)
2019/03/01 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
Python 命令行参数sys.argv
2008/09/06 Python
Python爬取国外天气预报网站的方法
2015/07/10 Python
Win7 64位下python3.6.5安装配置图文教程
2020/10/27 Python
Python最小二乘法矩阵
2019/01/02 Python
Python小程序 控制鼠标循环点击代码实例
2019/10/08 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
意大利简约的休闲品牌:Aspesi
2018/02/08 全球购物
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
CLR与IL分别是什么含义
2016/08/23 面试题
水利学院求职自荐书
2014/02/01 职场文书
测试工程师程序员求职信范文
2014/02/20 职场文书
优质护理服务演讲稿
2014/05/07 职场文书
教师批评与自我批评发言稿
2014/10/15 职场文书
水浒传读书笔记
2015/06/25 职场文书
golang中的空接口使用详解
2021/03/30 Python