我正在使用Last.FM api并使用此程序包http://www.last.fm/api/show/album.getInfo
我搜索了谷歌和谷歌的其他人,似乎没有人有这个问题......奇怪的是......
根据文档,我应该得到一个曲目列表。不。纳达。我确实得到了数据,所以我的API调用正在运行。我的应用程序没有列入黑名单,我可以从last.fm获取其他所有内容,但是轨道丢失......其他所有内容都如上所述。 - 这是我的电话的var_dump():
array(10) {
["name"]=>
string(15) "All Hallow's EP"
["artist"]=>
string(3) "AFI"
["lastfmid"]=>
string(7) "2027169"
["mbid"]=>
string(0) ""
["url"]=>
string(46) "http://www.last.fm/music/AFI/All+Hallow%27s+EP"
["releasedate"]=>
bool(false)
["image"]=>
array(3) {
["small"]=>
string(50) "http://userserve-ak.last.fm/serve/34s/35949507.png"
["medium"]=>
string(50) "http://userserve-ak.last.fm/serve/64s/35949507.png"
["large"]=>
string(51) "http://userserve-ak.last.fm/serve/174s/35949507.png"
}
["listeners"]=>
string(5) "47506"
["playcount"]=>
string(6) "316093"
["toptags"]=>
array(5) {
[0]=>
array(2) {
["name"]=>
string(4) "punk"
["url"]=>
string(27) "http://www.last.fm/tag/punk"
}
[1]=>
array(2) {
["name"]=>
string(12) "albums i own"
["url"]=>
string(39) "http://www.last.fm/tag/albums%20i%20own"
}
[2]=>
array(2) {
["name"]=>
string(9) "punk rock"
["url"]=>
string(34) "http://www.last.fm/tag/punk%20rock"
}
[3]=>
array(2) {
["name"]=>
string(13) "hardcore punk"
["url"]=>
string(38) "http://www.last.fm/tag/hardcore%20punk"
}
[4]=>
array(2) {
["name"]=>
string(3) "afi"
["url"]=>
string(26) "http://www.last.fm/tag/afi"
}
}
}
是的,我用不同的专辑尝试了这个,我知道最后一个fm有曲目....(这张专辑:http://www.last.fm/music/AFI/All+Hallow%27s+EP)...甚至一个可追踪的曲目。
Last.FM是否更改了相册的getInfo()结果并且没有更新文档?我错过了什么吗?我正在将所有必需的参数传递给电话。
基本上,我想我的问题是:其他人有同样的问题,还是只有我?
答案 0 :(得分:0)
去看看album.php和函数getInfo($ methodVars);您将看到未将曲目分配给返回变量。
我在第134行附近添加了以下内容:
$i = 0;
foreach ( $call->album->tracks->track as $track ) {
$info['tracks'][$i]['name'] = (string) $track->name;
$info['tracks'][$i]['rank'] =(string)$track['rank'][0];
$info['tracks'][$i]['duration'] = (string) $track->duration;
$i++;
}
希望这有帮助。
答案 1 :(得分:0)
我的解决方案看起来像这样:
if ( ! empty($call->album->tracks))
{
for( $n = 0 ; $n < count($call->album->tracks->track); $n++)
{
// This is identical to how tags is done...
$info['tracks'][$n]['name'] = (string) $call->album->tracks->track[$n]->name;
$info['tracks'][$n]['url'] = (string) $call->album->tracks->track[$n]->url;
}
}