中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

PHP實現微信公眾平臺音樂點播
來源:易賢網 閱讀:931 次 日期:2014-10-21 11:14:26
溫馨提示:易賢網小編為您整理了“PHP實現微信公眾平臺音樂點播”,方便廣大網友查閱!

首先說一下思路,微信提供了接口,只要數據格式滿足它所給的接口的XML格式即可以發送給關注者對應的音樂

1.構造微信提供的XML格式的音樂消息

音樂的XML格式是這樣的:

代碼如下:<xml>

<ToUserName><![CDATA[toUser]]></ToUserName>

<FromUserName><![CDATA[fromUser]]></FromUserName>

<CreateTime>12345678</CreateTime>

<MsgType><![CDATA[music]]></MsgType>

<Music>

<Title><![CDATA[TITLE]]></Title>

<Description><![CDATA[DESCRIPTION]]></Description>

<MusicUrl><![CDATA[MUSIC_Url]]></MusicUrl>

<HQMusicUrl><![CDATA[HQ_MUSIC_Url]]></HQMusicUrl>

<ThumbMediaId><![CDATA[media_id]]></ThumbMediaId>

</Music>

</xml>

我們寫個函數將數據轉換成這樣的格式,這里面主要的數據是MusicUrl和HQMusicUrl里面的數據,前者普通品質的音樂,后面HQ是高品質的,wifi下會優先播放HQ的。

代碼如下:private function transmitMusic($object, $musicArray, $flag = 0)

{

$itemTpl = "<Music>

<Title><![CDATA[%s]]></Title>

<Description><![CDATA[%s]]></Description>

<MusicUrl><![CDATA[%s]]></MusicUrl>

<HQMusicUrl><![CDATA[%s]]></HQMusicUrl>

</Music>";

$item_str = sprintf($itemTpl, $musicArray['Title'], $musicArray['Description'], $musicArray['MusicUrl'], $musicArray['HQMusicUrl']);

$textTpl = "<xml>

<ToUserName><![CDATA[%s]]></ToUserName>

<FromUserName><![CDATA[%s]]></FromUserName>

<CreateTime>%s</CreateTime>

<MsgType><![CDATA[music]]></MsgType>

$item_str

<FuncFlag>%d</FuncFlag>

</xml>";

$resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $flag);

return $resultStr;

}

2.構造參數$musicArray

代碼如下:$musicArray = array("Title"=>$songstr, "Description"=>"歌手:".$singerstr, "MusicUrl"=>$this->getMusicUrl($this->getMusic($songstr,$singerstr)),"HQMusicUrl"=>$this->getHQMusicUrl($this->getMusic($songstr,$singerstr)));

其中的$songstr和$singerstr變量是得從接受關注者的文本,你先提醒關注者按照一定的格式輸入文本,安然按這個固定格式截取出其中的歌曲歌手名。這個不難實現

我是這么寫的,其中的$keyword就是用戶輸入的內容,我要求的格式是這樣:格式為音樂+歌名 歌手;例如:音樂大約在冬季 齊秦,歌曲名稱和歌手中間用空格分隔。

代碼如下:

$aa = substr($keyword,strpos($keyword,"音樂")+strlen("音樂"));//一個漢字2個位置

$song = substr($aa,0,strpos($aa," "));

$singer = substr($aa,strpos($aa," "));

$songstr = trim((string)$song);

$singerstr = trim((string)$singer);

$musicArray = array("Title"=>$songstr, "Description"=>"歌手:".$singerstr, "MusicUrl"=>$this->getMusicUrl($this->getMusic($songstr,$singerstr)),"HQMusicUrl"=>$this->getHQMusicUrl($this->getMusic($songstr,$singerstr)));

$resultStr = $this->transmitMusic($object, $musicArray, $funcFlag);

具體字符串截取的函數用法可以去w3c上去查閱我就不細講了,主要是MusicUrl和HQMusicUrl內容的獲取。百度音樂接口 http://box.zhangmen.baidu.com/x?op = 12&count=1&title=TITLE $$AUTHOR$$$$

你在瀏覽器中輸入 http://box.zhangmen.baidu.com/x?op=12&count=1&title=大約在冬季$$齊秦$$$$觀察一下接口提供的XML數據的內容,主要是要encode和decode中的數據,這兩個數據是連在一起的,里面的CDATA中的內容取到xcode后面為止,即 &mid=0.74155984312224這些內容不要,我試過,加上這部分歌曲是放不出來的。拼接好的數據就是所要的MusicUrl和HQMusicUrl。

3.下面是重點,用PHP解析XML數據

由于不懂PHP語法,我花了許多時間

代碼如下://音樂點播

function read_child($node)

{

global $musicstr ;

$children = $node->childNodes; //獲得$node的所有子節點

foreach($children as $e) //循環讀取每一個子節點

{

/*if($e->nodeType == XML_TEXT_NODE) //如果子節點為文本型則輸出

{

echo $e->nodeValue."---------"."<BR>";

}*/

if($e->nodeType == XML_ELEMENT_NODE&&$e->nodeName=='encode') //如果子節點為文本型則輸出

{

$musicstr.=$e->nodeValue;

}

if($e->nodeType == XML_ELEMENT_NODE&&$e->nodeName=='decode') //如果子節點為文本型則輸出

{

$musicstr.=$e->nodeValue."|";

}

if($e->nodeType == XML_ELEMENT_NODE) //如果子節點為節點對象,則調用函數處理

{

$this->read_child($e); //注意這里的$this->是因為的這些方法都是寫在微信的那個wechatCallbackapiTest類中的,所以得加才能調用到這些函數。

}

}

return $musicstr ;

}

function getMusic($song,$singer)

{

$dom = new DomDocument(); //創建 DOM對象

$dom->load('http://box.zhangmen.baidu.com/x?op=12&count=1&title='.$song.'$$'.$singer.'$$$$'); //讀取 XML文件

$root = $dom->documentElement; //獲取 XML數據的根

return $this->read_child($root);

//return $b; //調用 read_child函數讀取根對象

}

function getMusicUrl($url)

{

// echo strpos($url,"&")."musciURL";

return substr($url,0,strpos($url,"&"));

}

function getHQMusicUrl($url)

{

//echo strripos($url,"&")."HQmusicURL";

return substr($url,strripos($url,"http"),strripos($url,"&")-strripos($url,"http"));

}

我是用DOM做的,百度知道上問別人的。當然取XML數據中的MusicUrl還有更好的方法:

代碼如下:xml = file_get_contents('http://box.zhangmen.baidu.com/x?op=12&count=1&title=大約在冬季$$齊秦$$$$');

$result = simplexml_load_string($xml);

echo strval($result->url->encode);

echo strval($result->url->decode);

//輸出:http://zhangmenshiting.baidu.com/data2/music/64380827/Z2ZmbGVuaW9fn6NndK6ap5WXcGVpZpuaZJdrbGtqm

m1mY2lolppnmpSXZWZubZyclmlmmZaXa3CTZJeZmW1ncGVll1qin5t1YWBmbGxsamxlaGVrbG9taTE$

64380827.mp3?xcode=140db3e8864c55164ad0bce2297ede73eaa48b2ded70843d&mid=0.38763446277961

更多信息請查看IT技術專欄

更多信息請查看網絡編程
易賢網手機網站地址:PHP實現微信公眾平臺音樂點播
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
小处雏高清一区二区三区| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲第一天堂av| 欧美精品一区视频| 久久国产福利| 久久手机精品视频| 久久gogo国模啪啪人体图| 亚洲激情另类| 国产欧美一区二区三区国产幕精品| 久久久精品动漫| 亚洲视频一区二区免费在线观看| 国产日韩在线一区| 亚洲伦理一区| 激情欧美一区二区| 国产欧美日韩综合一区在线播放| 欧美黄免费看| 久热re这里精品视频在线6| 亚洲一区精品视频| 亚洲欧美日产图| 亚洲午夜国产一区99re久久 | 小辣椒精品导航| 亚洲美女色禁图| 亚洲第一中文字幕| 一区在线视频| 国产一区二区高清不卡| 在线观看视频一区二区| 国产色综合久久| 国产精品永久| 国产精品丝袜白浆摸在线| 国产精品成人观看视频免费| 欧美国产高清| 欧美日韩中文在线观看| 欧美日韩不卡视频| 欧美日韩国产电影| 欧美日韩一区二区欧美激情| 欧美精品激情在线| 欧美日韩精品中文字幕| 欧美色图麻豆| 国产精品私房写真福利视频| 欧美激情五月| 国产精品嫩草99av在线| 国产精品入口66mio| 国产精品入口麻豆原神| 国产伦精品一区二区三区在线观看 | 欧美专区一区二区三区| 亚洲高清免费| 欧美日韩日韩| 欧美先锋影音| 国产欧美一区二区精品性色| 国产一区在线播放| 99pao成人国产永久免费视频| 亚洲视屏一区| 久久香蕉国产线看观看网| 欧美理论电影网| 国内精品久久久久久久影视蜜臀 | 亚洲国产经典视频| 一区二区三区亚洲| 一本大道久久a久久综合婷婷 | 久久综合色播五月| 国产精品久久久久国产a级| 亚洲第一伊人| 久久激情五月丁香伊人| 欧美日韩在线播放一区二区| 黑丝一区二区三区| 亚洲天堂偷拍| 欧美日本不卡| 亚洲黄色小视频| 久久精品视频一| 国产精品视频免费观看| 一区二区三区国产精品| 欧美777四色影视在线| 国产亚洲一级高清| 亚洲一区二区毛片| 欧美日韩在线另类| 亚洲精品激情| 欧美韩日一区二区三区| 一区二区视频欧美| 久久激情中文| 国产一区二区精品久久91| 亚洲综合精品四区| 国产精品爱久久久久久久| 99视频热这里只有精品免费| 欧美成人免费在线视频| 亚洲国产精品va在线看黑人动漫 | 午夜精品一区二区在线观看| 欧美日韩一区三区| 亚洲精品韩国| 欧美激情欧美狂野欧美精品| 在线日韩成人| 欧美高清你懂得| 亚洲日本视频| 欧美极品aⅴ影院| 亚洲精品美女91| 欧美激情综合网| 亚洲美女免费视频| 欧美日韩一二三区| 亚洲素人在线| 国产视频在线观看一区二区三区| 欧美一区二区三区视频免费| 国产欧美欧洲在线观看| 久久aⅴ乱码一区二区三区| 国产一区二区黄色| 麻豆国产va免费精品高清在线| 在线观看成人av电影| 免费亚洲电影在线| 欧美一区二区三区的| 国产日本欧美一区二区三区在线| 香蕉成人啪国产精品视频综合网| 国产精品女主播在线观看| 欧美一区二区三区喷汁尤物| 狠狠色狠狠色综合日日五| 美女诱惑一区| 亚洲视频在线视频| 国产一区二区精品丝袜| 男同欧美伦乱| 亚洲一级二级| 一区视频在线| 欧美日韩在线不卡| 久久精品国产一区二区三| 亚洲国产婷婷综合在线精品| 欧美视频在线不卡| 久久成人综合视频| av不卡在线观看| 韩国美女久久| 国产精品v欧美精品v日本精品动漫| 欧美一区二区三区另类| 亚洲国产另类精品专区| 国产精品另类一区| 欧美sm重口味系列视频在线观看| 亚洲网站啪啪| 91久久精品美女高潮| 国产美女精品在线| 欧美精品日韩一区| 久久九九国产精品| 亚洲一区二区在线免费观看| 在线观看日韩一区| 国产精品一二三四| 欧美精品国产一区| 久久一区亚洲| 亚洲欧美日韩网| 亚洲日本成人网| 韩日在线一区| 国产精品一区二区你懂的| 欧美激情亚洲另类| 久久亚洲综合| 久久av资源网站| 亚洲欧美中文字幕| 亚洲麻豆av| 亚洲高清视频的网址| 国产午夜精品美女毛片视频| 欧美日韩在线一区二区| 欧美二区在线观看| 欧美午夜视频网站| 欧美不卡三区| 麻豆9191精品国产| 久久精品亚洲| 欧美一区二区免费视频| 99精品国产在热久久| 韩曰欧美视频免费观看| 国产日韩欧美日韩| 国产乱人伦精品一区二区| 欧美午夜精品一区二区三区| 欧美精品一区二区三区在线看午夜| 久久亚裔精品欧美| 久久精品亚洲一区二区三区浴池| 午夜精品国产精品大乳美女| 一区二区三区视频在线播放| 亚洲精品少妇30p| 亚洲精品乱码久久久久久| 亚洲高清av在线| 在线观看视频日韩| 一区二区视频欧美| 亚洲福利在线观看| 亚洲电影欧美电影有声小说| 国外成人在线视频| 国模私拍视频一区| 国产亚洲人成a一在线v站| 国产日韩精品视频一区二区三区| 国产精品久久久久久久久免费| 欧美午夜一区| 国产精品男女猛烈高潮激情| 国产精品入口尤物| 国产日韩1区| 精品69视频一区二区三区| 曰韩精品一区二区| 亚洲人精品午夜在线观看| 亚洲电影在线播放| 亚洲七七久久综合桃花剧情介绍| 亚洲国产日韩美| 在线成人欧美| 亚洲精品美女在线观看| 99re8这里有精品热视频免费 | 午夜精品久久久久久久久久久久久| 一区二区三区黄色| 在线亚洲自拍| 欧美一区二区三区免费视| 久久久夜精品| 欧美激情亚洲自拍| 国产精品色在线| 影视先锋久久|