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 相关文章推荐
一个简单的MySQL数据浏览器
Oct 09 PHP
PHP实现微信公众平台音乐点播
Mar 20 PHP
PHP实现根据设备类型自动跳转相应页面的方法
Jul 24 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
Sep 10 PHP
php堆排序实现原理与应用方法
Jan 03 PHP
php中namespace use用法实例分析
Jan 22 PHP
Symfony2框架学习笔记之HTTP Cache用法详解
Mar 18 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
Dec 23 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
Jun 17 PHP
php实现微信发红包功能
Jul 13 PHP
PHP array_reduce()函数的应用解析
Oct 28 PHP
TP5框架页面跳转样式操作示例
Apr 05 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中全局变量global的使用演示代码
2011/05/18 PHP
thinkphp模板输出技巧汇总
2014/11/24 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
2019/12/12 PHP
PHP设计模式(四)原型模式Prototype实例详解【创建型】
2020/05/02 PHP
我见过最全的个人js加解密功能页面
2007/12/12 Javascript
JavaScript 三种不同位置代码的写法
2009/10/25 Javascript
firefox火狐浏览器与与ie兼容的2个问题总结
2010/07/20 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
JavaScript中的原型链prototype介绍
2014/12/30 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
ajax读取数据后使用jqchart显示图表的方法
2015/06/10 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
2015/09/14 Javascript
基于Node.js的JavaScript项目构建工具gulp的使用教程
2016/05/20 Javascript
js制作简单的音乐播放器的示例代码
2017/08/28 Javascript
深入浅析Vue中的Prop
2018/06/10 Javascript
jQuery zTree树插件的使用教程
2019/08/16 jQuery
JavaScript实现下拉列表
2021/01/20 Javascript
Python遍历zip文件输出名称时出现乱码问题的解决方法
2015/04/08 Python
python下载图片实现方法(超简单)
2017/07/21 Python
python七夕浪漫表白源码
2019/04/05 Python
python的re模块使用方法详解
2019/07/26 Python
NumPy排序的实现
2020/01/21 Python
python对数组进行排序,并输出排序后对应的索引值方式
2020/02/28 Python
pandas apply多线程实现代码
2020/08/17 Python
python dict如何定义
2020/09/02 Python
小结Python的反射机制
2020/09/28 Python
使用CSS3制作饼状旋转载入效果的实例
2015/06/23 HTML / CSS
Athleta官网:购买女士瑜伽服、技术运动服和休闲运动服
2020/11/12 全球购物
专业实习自我鉴定
2013/10/29 职场文书
公积金转移接收函
2014/01/11 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
cf战队收人广告词
2014/03/14 职场文书
低碳环保标语
2014/06/12 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书
正确的理解和使用Django信号(Signals)
2021/04/14 Python