SteviesWebsite

YouTube API – Videos suchen mit PHP

YouTube API

YouTube API

Die YouTube API baut hauptsächlich auf Feeds aus. Wir werden uns heute darum kümmern, ein Video mithilfe von PHP über die API zu finden.

Damit wir diese auch später verwenden können bauen wir eine schöne Funktion damit. Darin können wir natürlich den Suchbegriff eingeben. Weitere Parameter sind die Sortierung, der Start-Index und die Anzahl der Elemente.

Bedingung dafür, dass das ganze Funktioniert ist, dass man vom Webspace externe Dateien laden kann. Dieses ist aus Sicherheitsgründen bei manchen Webspace-Anbietern (standardmäßig) ausgeschaltet. Ich hab das ganze auf meinem Testsystem gemacht (deswegen kann ich euch auch keine Testseite zur Verfügung stellen).

Über simplexml_load_file laden wir uns das Feed (was wie wir wissen aus XML besteht) . Danach suchen wir uns da die videos raus und geben sie zurück. Das sieht dann so aus:

<?php
  function getYouTubeVideos($search,$orderby,$start,$count){
    $search = urlencode($search);
    $orderby = urlencode($orderby);
    $xml = simplexml_load_file('http://gdata.youtube.com/feeds/api/videos?q='.$search.'&orderby='.$orderby.'&start-index='.$start.'&max-results='.$count.'&v=2');
    foreach($xml->entry as $video){
      $res[] = $video;
    }
    return $res;
  }
?>

Die einzelnen Videos bauen noch auf XML auf, so dass man dort die passenden Einträge auslesen muss. Am besten sieht man den Aufbau, wenn man folgende Schleife macht:

<?php
foreach(getYouTubeVideos("Video","published",1,10) as $video){
  print_r($video);
}
?>

Die wichtigsten Einträge sind wohl der Titel und der Link zu YouTube. Ich habe außerdem noch den Autor, das Veröfftlichs- und Änderungsdatum ausgelesen. Das sieht dann so aus:

<?PHP
  foreach(getYouTubeVideos("Video","published",1,10) as $video){
    ?>
    <h2>
      <a href="<?PHP echo $video->link['href']; ?>">
        <?PHP echo $video->title; ?>
      </a>
    </h2>
    <p>Ver&ouml;ffentlicht: 
      <?PHP echo $video->published; ?>
    </p>
    <p>Ge&auml;ndert: 
      <?PHP echo $video->updated; ?>
    </p>
    <p>Autor: 
      <?PHP echo $video->author->name; ?>
    </p>
    <?PHP
  }
?>

Verwandte Themen in anderen Blogs

RSS Feed für Kommentare zu diesem Artikel. TrackBack URL

3 Kommentare »

  1. Super Hinweis, Danke. Ich werde das bei Gelegenheit mal testen.

    Kommentar von Mißfeldt — 8. April 2010 @ 00:07

Hinterlasse einen Kommentar

Trackbacks/Pingbacks

  1. [...] Stefan Wienströher ist ja eigentlich ein alter Bloghase. Er hat den Blog auf SteviesWebsite im Januar 2009 gestartet – genau wie ich :-) . Optisch ist der Blog eher defensiv aufgestellt, aber was ich bei SteviesWebsite wirklich klasse finde ist der Informationsgehalt. Er bloggt wirklich hilfreiche Artikel mit häufig konkrete Code-Snippets (zum Beispiel: “YouTube API – Videos suchen mit PHP“). [...]

    Pingback von 3 lesenswerte Blogs – und 3 Zugaben - tagSeoBlog — 12. Juni 2010 @ 01:35

  2. [...] YouTube API – Videos suchen mit PHP Wie kommst du an den MP3-Link? __________________ PHP-Code: echo "Hello World";  [...]

    Pingback von Link zum ersten Youtube Ergebnis - php.de — 10. August 2010 @ 20:35

Webservice erstellenWebservices sind oft die Schnittstelle zwischen Server und Client. Wie man mit PHP einen WebService erstellt, lernt ihr in diesem Tutoial. [mehr...]

LiveEditor - Kostenloser WebEditorDer kostenlose WebEditor hilft dir dabei, deine Website besser zu entwickeln. Mit dem Syntax-Highlighting fällt geht alles viel schneller. Download jetzt! [mehr...]

Code & Blog LogoErstelle dein eigenes CMS mit PHP. Dieses Tutorial wird dir zeigen wie das geht. Also lies dir es durch und frische deine PHP Kenntnisse auf. [mehr...]

WebanalyseFür die Verbesserung Deiner Seite solltest Du wissen, wie sich die Besucher verhalten. Diese Artikel zeigen Dir wie man das am geschicktesten macht. [mehr...]

  • RSS
  • Blogverzeichnis - Blog Verzeichnis bloggerei.de
Ich biete mich als Lektor für deine Blog-Artikel an.
Sende mir einfach deinen Artikel und ich korrigiere ihn.
© SteviesWebsite.de - Kontakt | Impressum