3

現在、mikealmond/MusicBrainzクラスを使用して、素晴らしい MusicBrainz データベースから必要な情報を取得しています。

しかし、私には 1 つの問題があります。リリースから録音を取得する必要があります。ブラウザの Web API で次の URL を介してそれを行う方法を見つけました: musicbrainz(dot)org/ws/2/release/61bf0388-b8a9 -48f4-81d1-7eb02706dfb0?inc=レコーディング

しかし、私が使用しているクラスでは、リリースの ID を追加する前にエンティティを追加する必要がありますが、何を追加すればよいかわかりません。そして、それを取り除こうとすると、次のような URL になってしまいます: musicbrainz(dot)org/ws/2/release/?=61bf0388-b8a9-48f4-81d1-7eb02706dfb0?inc=recordings仕事。リリースに mbid を与えていると言うために追加できるエンティティはありますか?

または、誰かが私がこの作業を行うために使用しているクラスを変更するのを手伝ってくれるかもしれません.私は自分でやろうとしましたが失敗しました.

EDIT : 著者に連絡を取ろうとしましたが、うまくいきませんでした。

上記のクラスからこのコードを試しました:

$includes = array('recordings');
try {
    $details = $brainz->browseRelease('61bf0388-b8a9-48f4-81d1-7eb02706dfb0', $includes, 2);
    print_r($details);
} catch (Exception $e) {
    print $e->getMessage();
}
print "\n\n";
4

1 に答える 1

3

私はライブラリの作者です。GitHub でこの質問に答えたところですが、ここでも答えを共有したいと思いました。

あなたが探しているのはルックアップです。

$details = $brainz->lookup('release', '61bf0388-b8a9-48f4-81d1-7eb02706dfb0', array('recordings'));

これを行う別の方法は、リリースに基づいてレコーディングを参照することです。

$details = $brainz->browseRecording('release', 'aad08360-f5cd-4e3b-9df6-88dae1b3e3f2', $includes, 2);
于 2015-01-10T04:09:56.513 に答える