基于網易云音樂api的PHP在線音樂播放器代碼。具有音樂搜索、播放、下載、歌詞同步顯示、個人音樂播放列表同步等功能。
網易云API接口代碼
use Metowolf\Meting;
$source = getParam('source', 'netease'); // 歌曲源
if($source == 'kugou' || $source == 'baidu') define('NO_HTTPS', true); // 酷狗和百度音樂源暫不支持 https
$API = new Meting($source);
$API->format(true); // 啟用格式化功能
switch(getParam('types')) // 根據請求的 Api,執行相應操作
{
case 'url': // 獲取歌曲鏈接
$id = getParam('id'); // 歌曲ID
$data = $API->url($id);
echojson($data);
break;
case 'pic': // 獲取歌曲鏈接
$id = getParam('id'); // 歌曲ID
$data = $API->pic($id);
echojson($data);
break;
case 'lyric': // 獲取歌詞
$id = getParam('id'); // 歌曲ID
$data = $API->lyric($id);
echojson($data);
break;
case 'download': // 下載歌曲(棄用)
$fileurl = getParam('url'); // 鏈接
header('location:$fileurl');
exit();
break;
case 'userlist': // 獲取用戶歌單列表
$uid = getParam('uid'); // 用戶ID
$url= 'http://music.163.com/api/user/playlist/?offset=0&limit=1001&uid='.$uid;
$data = file_get_contents($url);
echojson($data);
break;
case 'playlist': // 獲取歌單中的歌曲
$id = getParam('id'); // 歌單ID
$data = $API->format(false)->playlist($id);
echojson($data);
break;
case 'search': // 搜索歌曲
$s = getParam('name'); // 歌名
$limit = getParam('count', 20); // 每頁顯示數量
$pages = getParam('pages', 1); // 頁碼
$data = $API->search($s, $pages, $limit);
echojson($data);
break;
default:
echo '<!doctype html><html><head><meta charset="utf-8"><title>信息</title><style>* {font-family: microsoft yahei}</style></head><body> <h2>MKOnlinePlayer</h2><h3>Github: https://github.com/mengkunsoft/MKOnlineMusicPlayer</h3><br>';
if(!defined('DEBUG') || DEBUG !== true) { // 非調試模式
echo '<p>Api 調試模式已關閉</p>';
} else {
echo '<p><font color="red">您已開啟 Api 調試功能,正常使用時請在 api.php 中關閉該選項!</font></p><br>';
echo '<p>PHP 版本:'.phpversion().' (本程序要求 PHP 5.4+)</p><br>';
echo '<p>服務器函數檢查</p>';
echo '<p>curl_exec: '.checkfunc('curl_exec',true).' (用于獲取音樂數據)</p>';
echo '<p>file_get_contents: '.checkfunc('file_get_contents',true).' (用于獲取音樂數據)</p>';
echo '<p>json_decode: '.checkfunc('json_decode',true).' (用于后臺數據格式化)</p>';
echo '<p>hex2bin: '.checkfunc('hex2bin',true).' (用于數據解析)</p>';
echo '<p>openssl_encrypt: '.checkfunc('openssl_encrypt',true).' (用于數據解析)</p>';
}
echo '</body></html>';
}
V2.3更新內容
全面支持網易云、蝦米、酷狗、百度音樂源切換
移動端歌曲列表支持直接分享、下載歌曲
環境支持
PHP5.4+,支持curl_exec,file_get_contents,openssl_encrypt,json_decode