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的无限分类实现想法~
Jan 02 PHP
Array of country list in PHP with Zend Framework
Oct 17 PHP
PHP设计模式之责任链模式的深入解析
Jun 13 PHP
基于PHP+Ajax实现表单验证的详解
Jun 25 PHP
64位windows系统下安装Memcache缓存
Dec 06 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
Feb 17 PHP
浅谈ThinkPHP中initialize和construct的区别
Apr 01 PHP
php实现微信支付之现金红包
May 30 PHP
PHP函数按引用传递参数及函数可选参数用法示例
Jun 04 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
php把文件设置为插件的技巧方法
Feb 03 PHP
PHP如何解决微信文章图片防盗链
Dec 09 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版国家代码、缩写查询函数代码
2011/08/14 PHP
ThinkPHP之N方法实例详解
2014/06/20 PHP
全面解读PHP的人气开发框架Laravel
2015/10/15 PHP
php+ajax实现无刷新分页
2015/11/18 PHP
PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析
2017/05/29 PHP
php格式文件打开的四种方法
2018/02/24 PHP
用 Javascript 验证表单(form)中多选框(checkbox)值
2009/09/08 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
原生javascript图片自动或手动切换示例附演示源码
2013/09/04 Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
2014/06/26 Javascript
js实现汉字排序的方法
2015/07/23 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
AngularJS 与Bootstrap实现表格分页实例代码
2016/10/14 Javascript
jQuery实现验证表单密码一致性及正则表达式验证邮箱、手机号的方法
2017/12/05 jQuery
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
2018/10/12 Javascript
jQuery each和js forEach用法比较
2019/02/27 jQuery
vue源码nextTick使用及原理解析
2019/08/13 Javascript
webpack是如何实现模块化加载的方法
2019/11/06 Javascript
Vue向后台传数组数据,springboot接收vue传的数组数据实例
2020/11/12 Javascript
JavaScript this关键字的深入详解
2021/01/14 Javascript
pygame学习笔记(3):运动速率、时间、事件、文字
2015/04/15 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
2018/08/01 Python
PyQt编程之如何在屏幕中央显示窗体的实例
2019/06/18 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
浅谈JupyterNotebook导出pdf解决中文的问题
2020/04/22 Python
Python pip install如何修改默认下载路径
2020/04/29 Python
温泉秘密:Onsen Secret
2020/07/06 全球购物
Ref与out有什么不同
2012/11/24 面试题
优质的学校老师推荐信
2013/10/28 职场文书
求职信范文怎么写
2014/01/29 职场文书
运动会入场词100字
2014/02/06 职场文书
歌唱比赛策划方案
2014/06/06 职场文书
高中班级口号
2014/06/09 职场文书
九一八事变纪念日演讲稿
2014/09/14 职场文书
小学语文教学随笔
2015/08/14 职场文书
python turtle绘制多边形和跳跃和改变速度特效
2022/03/16 Python