2012-04-14 17 views
0

http://www.lyrdb.com/services/lws-tech.phpに歌詞APIがあります。基本的には、照会されると一連の結果が返されます。私はPHPに精通しているわけではありませんが、返される結果セットはString変数に格納する必要があり、ユーザーがクリックした曲IDを抽出して曲IDを介して歌詞。PHPでこの歌詞APIを実装する方法は?

誰でもこのスクリプトを作成してください。あまりにもあなたの助けを感謝:)

ありがとう。

+2

申し訳ありませんが、SOあなたのために何かをコーディングするか、全体の本を書いていない、具体的な質問を目指しています。何かを試してから、特定の問題に遭遇したときに、あなたがそれらを理解できない場合は、SOに投稿することを検討してください。現状では、あなたの質問は広すぎます。 – Corbin

+0

サービスにアクセスするには特定の質問があります - その人にカールやファイルを与えてください._get_contentsはそれほど大きな問題ではありませんか? – mplungjan

+0

申し訳ありませんが、これは、実際には私がここにいるので、そのルールを違反していれば、そのことを心に留めておくでしょう@Corbin :)。 – Arjit

答えて

3

誰もあなたにPHPを教えることはできません。しかし、基本的にPHPの2つの機能が必要です。

[email protected]:~$ cat lyrdb.php 
<?php 

$res = file_get_contents("http://webservices.lyrdb.com/lookup.php?q=we%20are%20the%20champions&for=trackname&agent=agent"); 
//echo $res; 
$res = split(PHP_EOL, $res); 
//print_r($res); 
foreach($res as $k=>$v) { 
    $v = split("\\\\", $v); 
    //print_r($v); 
    $lyr = file_get_contents("http://webservices.lyrdb.com/getlyr.php?q=".$v[0]); 
    //echo $lyr; 
} 

?> 

これは最初のクエリから返されたすべての結果の歌詞をフェッチ:以下

  • split
  • file_get_contents
    1. はあなたのためにこれを行いますサンプルコードです。 制限されたデータセットでのみ行うことができます。

    +0

    'split'は推奨されていません。あなたの場合、正規表現は必要ないので、代わりに 'explode()'を使用してください!そして、あなたの 'PHP_EOL'の使用は悪く、おそらくウェブサイトは' \ n'で使われていますが、あなたのPHPコードは '\ r \ n'システム(windows)上で動いているかもしれません。それだけでなく、ファイル/ウェブリソースを行単位で取得するには、 '$ res = file( 'http:// ...');' – ThiefMaster

    +0

    あなたの指導のために大変ありがとうAbhinav、これで私の方法を見つけるのにたくさん! :) – Arjit

    +0

    助けがあれば親切に回答を受け入れる –

    1

    起動しますオフ

    $titles = explode("\n",file_get_contents("http://webservices.lyrdb.com/lookup.php?q=Elton+John&for=artist&agent=testservice")); 
    
    +0

    私の質問に答える時間をありがとう、ありがとうございます:) – Arjit

    関連する問題