You are not logged in.

  • Login

1

Saturday, October 9th 2010, 2:39pm

RSS Feed von youtube auslesen, die Anzahl soll begrenzt sein

Hallo zusammen,

ich habe mir folgendes zusammengestellt:

PHP Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
    include('rss_fetch.inc');
    $feed = fetch_rss("http://gdata.youtube.com/feeds/api/users/gameinsideshow/uploads?alt=rss");
 
if(count($feed->items)>0){
    foreach ($feed->items as $video){
        //Get the video ID
              preg_match("/http:\/\/gdata.youtube.com\/feeds\/api\/videos\/(([a-zA-Z0-9]|-|_)*)/",  $video['guid'], $videoIdMatches);
            $videoID = $videoIdMatches[1];
        ?>  
<li>
  <span class="photo">
   <span class="fp-img2">
     <img src="http://img.youtube.com/vi/<?= $videoID ?>/0.jpg"  alt="<?= $video["title"] ?>" width="120" height="90" />
   </span>
  </span>
    <h4>$title</h4>
   <span class="desc"><?= $video->description ?></span> 
   <a href="<?= $video['link'] ?>">Read More...</a> 
</li>
 
        <?php
    }
}else{
    echo "<h3>No Videos Found</h3>";
}
?>

Das läuft auch alles nur ich möchte nicht alle Videos anzeigen, sondern nur 5. Kann mir jemand den Code dafür etwas abändern?

2

Saturday, October 9th 2010, 5:23pm

PHP Quellcode

1
2
3
4
5
# Liefert dir die ersten fünf Elemente des Feeds
array_slice($feed->items, 0, 5)
 
# Liefert dir die letzten fünf Elemente des Feeds
array_slice($feed->items, -5)

Darüber kannst du dann mit der foreach-Schleife iterieren. Besser wäre es sicherlich, wenn du mithilfe der YouTube-API die Anzahl der Videos einschränken könntest.

3

Saturday, October 9th 2010, 7:18pm

PHP Quellcode

1
2
3
4
5
# Liefert dir die ersten fünf Elemente des Feeds
array_slice($feed->items, 0, 5)
 
# Liefert dir die letzten fünf Elemente des Feeds
array_slice($feed->items, -5)

Darüber kannst du dann mit der foreach-Schleife iterieren. Besser wäre es sicherlich, wenn du mithilfe der YouTube-API die Anzahl der Videos einschränken könntest.


Entschuldige bitte, aber wohin muss der Code?

Ich habe das jetzt so:

PHP Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
    include('rss_fetch.inc');
    $feed = fetch_rss("http://gdata.youtube.com/feeds/api/users/gameinsideshow/uploads?alt=rss");
    $num_items = 5;
    $items = array_slice($rss->items, 0,$num_items);
}
 
if(count($feed->items)>0){
    foreach ($feed->items as $video){
        //Get the video ID
            preg_match("/http:\/\/gdata.youtube.com\/feeds\/api\/videos\/(([a-zA-Z0-9]|-|_)*)/", $video['guid'], $videoIdMatches);
            $videoID = $videoIdMatches[1];
        ?>  
<li>
  <span class="photo">
   <span class="fp-img2">
    <img src="http://img.youtube.com/vi/<?= $videoID ?>/0.jpg" alt="<?= $video["title"] ?>" width="120" height="90" />
   </span>
  </span>
    <h4>$title</h4>
   <span class="desc"><?= $video->description ?></span> 
   <a href="<?= $video['link'] ?>">Read More...</a> 
</li>
 
        <?php
    }
}else{
    echo "<h3>No Videos Found</h3>";
}
?>


bekomme aber den Fehler:

Quoted

Parse error: syntax error, unexpected '}' in /www/htdocs/w00b2576/testumgebungen/4images/externrss/gameinsiderss.php on line 6

This post has been edited 1 times, last edit by "Sumale.nin" (Oct 9th 2010, 7:23pm)


4

Saturday, October 9th 2010, 7:21pm

PHP Quellcode

1
foreach (array_slice($feed->items, 0, 5) as $video) {

Z. B. dies in Zeile 6.

5

Saturday, October 9th 2010, 7:25pm

Perfekt, DANKE!

Social bookmarks