2016-07-06 23 views
-3

Ich versuche, youtube Ergebnisse in meiner PHP-Seite anzuzeigen. Ich habe die Funktion simplexml_load_file() verwendet, die ein XML-Objekt zurückgeben soll.Fehler bei der Verwendung von simplexml_load_file() php

$link = "http://gdata.youtube.com/feeds/api/users/aliensabductedme/favorites"; 
$xml = simplexml_load_file($link); 

Ich bekomme einen HTTP-Anfrage Fehler. Ich habe erfahren, dass gdata.youtube.com jetzt nicht funktioniert. also .. was ist die Alternative dazu, so dass ich simplexml_load_file() PHP-Funktion verwenden kann.

+2

Wenn dieser Link nicht mehr funktioniert, dann hat das nichts mit der PHP-Funktion zu tun. – Devon

Antwort

0

Youtube hat die URL für ihre XML-Feeds geändert ... Sie können die neue URL finden, indem Sie den Quellcode in der Playlist anzeigen, für die Sie die URL abrufen möchten. Suchen Sie einfach nach „playlist_id“ im Quellcode und finden Sie die richtige id, dann verwenden Sie die ID im Format unten für den $ link

$link = "https://www.youtube.com/feeds/videos.xml?playlist_id=FLL8mk53VPSk5tKXixJq-FTA"; 
$xml = simplexml_load_file($link); 
+0

Während Code oft für sich selbst spricht, werden Antworten, die nur Code enthalten und keine textliche Erklärung haben, für die Überprüfungswarteschlangen markiert. Sie können dies vermeiden, indem Sie einen oder zwei Sätze Erklärung hinzufügen. – Will

+0

@Will .... gut zu wissen ... Ich bin neu hier. – Jeremy

0

nicht sicher, ob dies noch erforderlich ist, aber wie ich schon wanderte meinen Code aus die api-v2 zu api-v3 verwende ich nicht mehr simplexml.

So wie es jetzt ist, erfordert einen Benutzer, Schlüssel und für einfache Bedienung, habe ich eingeschaltet zu json_decode

Beispiel:

$url_link = 'https://www.googleapis.com/youtube/v3/videos?part=snippet&id=[VIDEO_ID]&key=[API_KEY]'; 

$video = file_get_contents($url_link); 
$data= json_decode($video, true); 

$vid = $data['id']; 

.......... und so weiter .

Ich mag es irgendwie besser. (^ - ^)

Verwandte Themen