2016-04-27 15 views
0

Wie bekomme ich Itunes Top-Alben Name, Künstlername & ID JSON zu PHP.iTunes Top-Alben JSON mit PHP

https://itunes.apple.com/us/rss/topalbums/limit=10/json 

Ich habe versucht, so etwas wie

<?php 
$content=file_get_contents("https://itunes.apple.com/us/rss/topalbums/limit=10/json"); 
$top_albums=json_decode($content); 
$tracks = $top_albums->feed->entry; 
foreach($tracks as $track) { 
$name = $track->title->lable; 
echo $name. "<br/>"; 
} 
?> 

Notice: Undefined property: stdClass::$lable in C:\xampp\htdocs\test\itunes.php on line 6 

Notwendigkeit Arbeits Code Alle Alben von feed-> Eintrag wie im bekommen: Name im: Künstler im: Bildtitel.

+0

können Sie 'print_r ($ top_albums)', um zu sehen, was sie hat? – uzaif

+0

Ja, es gibt ein Array wie stdClass aus Objekt ([feed] => stdClass Objekt ([author] => stdClass Objekt ([name] => stdClass Objekt ([label] => iTunes Store) [uri] => stdClass Objekt ([ label] => http://www.apple.com/itunes/)) [entry] => Array ([0] => stdClass Objekt ([im: name] => stdClass Objekt ([label] => Das Sehr Best of Prince) –

+0

kannst du 'print_r ($ track)' in 'foreach' loop – uzaif

Antwort

1

Um die Objekteigenschaften mit Sonderzeichen zugreifen zu können, müssen Sie sie entkommen:

$image = $track->{'im:image'}[0]->label; 
echo $image . '<br />'; 

Die Klammern können Sie die Eigenschaft mit der für den Zugriff auf: die eckigen Klammern können Sie die Array-Index-Nummer für den Zugriff auf .

Es gibt auch einen Tippfehler auf der Leitung 6 den Fehler zu werfen, sollte Label-Label sein:

$name = $track->title->label; 
+0

Vielen Dank, jetzt ist alles in Ordnung. Hauptproblem waren spezielle Zeichen in Eigenschaften, die mithilfe von geschweiften Klammern aufgelöst wurden. –