$song = "The Buzzcocks - Orgasm Addict";
$songeach = explode("-", $song);
$artist = trim($songeach[0]);
$song = trim($songeach[1]);
echo $artist;
//echos 'The Buzzcocks'
echo $song;
//echos 'Orgasm Addict'
$lyricxml1 = simplexml_load_file('http://api.chartlyrics.com/apiv1.asmx/SearchLyric?artist='.$artist.'&song='.$song.'');
$lyricchecksum2 = $lyricxml1->SearchLyricResult[0]->LyricChecksum;
$lyricid = $lyricxml1->SearchLyricResult[0]->LyricId;
echo $lyricchecksum2;
//echos 'c58a88a5cd5550b2793a408d17193af6'
echo $lyricid;
//echos '5497'
これまでのところ、すべて適切で適切です。simplexml_load_fileストリームを開くことに失敗しました。E_WARNING:タイプ2
しかし、私はここに
$lyricxml2 = simplexml_load_file('http://api.chartlyrics.com/apiv1.asmx/GetLyric?lyricId='.$lyricid.'&lyricCheckSum='.$lyricchecksum2.'');
print_r($lyricxml2);
を得れば、私はこのエラーが表示されます。
E_WARNING : type 2 -- simplexml_load_file(http://api.chartlyrics.com/apiv1.asmx/GetLyric?lyricId=5497&lyricCheckSum=c58a88a5cd5550b2793a408d17193af6): failed to open stream: HTTP request failed! -- at line 15
E_WARNING : type 2 -- simplexml_load_file(): I/O warning : failed to load external entity "http://api.chartlyrics.com/apiv1.asmx/GetLyric?lyricId=5497&lyricCheckSum=c58a88a5cd5550b2793a408d17193af6" -- at line 15
URL/xmlファイルが適切であるにもかかわらず(手動ブラウザで動作します) http://api.chartlyrics.com/apiv1.asmx/GetLyric?lyricId=5497&lyricCheckSum=c58a88a5cd5550b2793a408d17193af6
そして同じ形式の$ lyricxml1(エコー出力:http://api.chartlyrics.com/apiv1.asmx/SearchLyric?artist=The Buzzcocks &の曲= Orgasm Addict)
複数回試しましたが、すべて失敗しましたか?リクエストが1回失敗したようです。私はあなたの正確なコードをコピーし、私はエラーを再現することができません。 – ebildude123
エラーを再現できません。 2番目のurlで 'simplexml_load_file(...)'を実行すると、すべてが動作します。 – BeetleJuice
うーん..うわー。ええ、私はlocalhostで少なくとも12回も試してみましたが、私もphpfiddle.netで試してみました。私は常に第2のxmlファイルで同じエラーが発生します。私はライブホストで試してみます。 – bbruman