2016-02-14 45 views
0

我需要提取從XML Radionomy(無線流媒體)的藝術家,標題包含的信息,封面,天氣等從XML PHP提取信息給我的錯誤

通過瀏覽器去把這個網址所有信息的XML:

http://api.radionomy.com/currentsong.cfm?radiouid=ce5b70e5-dcc3-40a2-81b2-c713a02daf29&apikey=842650d9-c21a-474d-be8f-f44413dfaae2&callmeback=no&type=xml&cover=yes&previ%20ous=no 

<tracks> 
<radioname>RTFM</radioname> 
<rank>2</rank> 
<isradionomy>1</isradionomy> 
<radurl>http://www.radionomy.com/rtfm</radurl> 
<track> 
<uniqueid>2905480252</uniqueid> 
<title>02-13-2016</title> 
<artists>News - US</artists> 
<starttime>2016-02-14 00:59:57.177</starttime> 
<playduration>121352</playduration> 
<current>1</current> 
</track> 
</tracks> 

但要設法讓PHP的信息給我的錯誤。我不知道他可能會成爲什麼問題,看看我能否伸出援助之手。

我想這一點:

$xml = @simplexml_load_file(" 
http://api.radionomy.com/currentsong.cfm?radiouid=ce5b70e5-dcc3-40a2-81b2-c713a02daf29&apikey=842650d9-c21a-474d-be8f-f44413dfaae2&callmeback=no&type=xml&cover=yes&previ%20ous=no"); 


if($xml){ 


foreach ($xml as $track){ 



$artiste = $track->artists; 
$titre = $track->title; 
$pochette = $track->cover; 

continue; 

} 

}else{ 

    echo "error"; 

    } 

警告:)...中

+0

請參閱我的回答中的描述和提供的工作代碼。 – smozgur

回答

1

編輯的foreach(提供了無效的參數:

注意到越來越錯誤,並提供工作代碼。

使用urlencode來編碼您的URL字符串。使用$ xml-> track來循環跟蹤節點。

並停止使用@查看實際錯誤。看到錯誤真的很有幫助。

沒有碰到你的原始代碼,但你可以從這裏拿它。

<?php 

$xml = simplexml_load_file(urlencode("http://api.radionomy.com/currentsong.cfm?radiouid=ce5b70e5-dcc3-40a2-81b2-c713a02daf29&apikey=842650d9-c21a-474d-be8f-f44413dfaae2&callmeback=no&type=xml&cover=yes&previ%20ous=no")); 

if($xml){ 

    foreach ($xml->track as $track){ 

     $artiste = $track->artists; 
     $titre = $track->title; 
     $pochette = $track->cover; 

     continue; 
    } 
} else { 
    echo "error"; 
} 
+0

Yesssssss是驚人的,一直在使用這種方法,並立即運行。你很棒,非常感謝你! – PlayerWet

+1

很高興聽到它的幫助。請考慮「不要」使用@並讓錯誤被揭示 - 除非真的有必要。 – smozgur

+0

非常感謝,我會記住:D – PlayerWet