php微信公众号开发之音乐信息


Posted in PHP onOctober 20, 2018

本文实例为大家分享了php微信公众号音乐信息的具体代码,供大家参考,具体内容如下

  • 高品质—-HQMusicUrl
  • 低品质—-MusicUrl  

php微信公众号开发之音乐信息

php微信公众号开发之音乐信息

核心代码如下:

$textTpl = "<xml>
        <ToUserName><![CDATA[%s]]></ToUserName>
        <FromUserName><![CDATA[%s]]></FromUserName>
        <CreateTime>%s</CreateTime>
        <MsgType><![CDATA[music]]></MsgType>
        <Music>
          <Title><![CDATA[欢乐颂]]></Title>
          <Description><![CDATA[贝多芬]]></Description>
          <MusicUrl><![CDATA[http://1.dq095.applinzi.com/欢乐颂.mp3]]></MusicUrl>
          <HQMusicUrl><![CDATA[http://1.dq095.applinzi.com/欢乐颂.mp3]]></HQMusicUrl>
        </Music>
        <FuncFlag>0</FuncFlag>
      </xml>";       



if(!empty( $keyword ))
 {           
  $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time);
  echo $resultStr;
 }else{
  echo "Input something...";
 }

index.php代码如下:

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

//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
$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[music]]></MsgType>
               <Music>
               <Title><![CDATA[欢乐颂]]></Title>
               <Description><![CDATA[贝多芬]]></Description>
               <MusicUrl><![CDATA[http://1.dq095.applinzi.com/欢乐颂.mp3]]></MusicUrl>
               <HQMusicUrl><![CDATA[http://1.dq095.applinzi.com/欢乐颂.mp3]]></HQMusicUrl>
               </Music>
              <FuncFlag>0</FuncFlag>
              </xml>";       



        if(!empty( $keyword ))
        {

          $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time);
          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中的正规表达式(一)
Oct 09 PHP
手把手教你使用DedeCms V3的在线采集图文教程
Apr 03 PHP
fleaphp下不确定的多条件查询的巧妙解决方法
Sep 11 PHP
PHP 多维数组排序实现代码
Aug 05 PHP
php 变量未定义等错误的解决方法
Jan 12 PHP
如何用php获取文件名后缀
Jun 09 PHP
PHP中变量引用与变量销毁机制分析
Nov 15 PHP
PHP中的闭包(匿名函数)浅析
Feb 07 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
Oct 29 PHP
利用PHP判断文件是否为图片的方法总结
Jan 06 PHP
PHP DB 数据库连接类定义与用法示例
Mar 11 PHP
PHP实现的抓取小说网站内容功能示例
Jun 27 PHP
php微信公众号开发之欢迎老朋友
Oct 20 #PHP
php微信公众号开发之秒杀
Oct 20 #PHP
php微信公众号开发之关键词回复
Oct 20 #PHP
php微信公众号开发之图片回复
Oct 20 #PHP
php5.x禁用eval的操作方法
Oct 19 #PHP
django中的ajax组件教程详解
Oct 18 #PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
Oct 18 #PHP
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
document.onreadystatechange事件的用法分析
2009/10/17 Javascript
JSONP获取Twitter和Facebook文章数的具体步骤
2014/02/24 Javascript
JavaScript+html5 canvas绘制的小人效果
2016/01/27 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
2017/05/15 jQuery
vue开发调试神器vue-devtools使用详解
2017/07/13 Javascript
Nodejs+express+ejs简单使用实例代码
2017/09/18 NodeJs
详解基于Vue-cli搭建的项目如何和后台交互
2018/06/29 Javascript
js与jquery获取input输入框中的值实例讲解
2020/02/27 jQuery
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
Python3实现从指定路径查找文件的方法
2015/05/22 Python
Python标准库之Sys模块使用详解
2015/05/23 Python
python数据类型_字符串常用操作(详解)
2017/05/30 Python
python机器学习之神经网络(三)
2017/12/20 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
python使用pdfminer解析pdf文件的方法示例
2018/12/20 Python
twilio python自动拨打电话,播放自定义mp3音频的方法
2019/08/08 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
python dumps和loads区别详解
2020/02/04 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
CSS3弹性盒模型开发笔记(三)
2016/04/26 HTML / CSS
纯css3实现照片墙效果
2014/12/26 HTML / CSS
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
html5录音功能实战示例
2019/03/25 HTML / CSS
波兰最大的儿童服装连锁店之一:5.10.15.
2018/02/11 全球购物
转让协议书范本
2014/04/15 职场文书
协议书范本
2014/04/23 职场文书
英语课前三分钟演讲稿
2014/08/19 职场文书
2014矛盾纠纷排查调处工作总结
2014/12/09 职场文书
入党培养人考察意见
2015/06/08 职场文书
六五普法心得体会2016
2016/01/21 职场文书
演讲稿之我的初心我的成长
2019/08/12 职场文书
使用qt quick-ListView仿微信好友列表和聊天列表的示例代码
2021/06/13 Python