Blog

tags: news software php deutsch opensource osbn


08.Oct.2014 16:29 - zuletzt aktualisiert: 01.Sep.2016 11:48

Kleiner php-Parser für den OSBN-Feed

Dies ist der erste Blog-Eintrag, der auch im OSBN erscheint. -- Hallo Welt! :)

Heute habe ich mal den OSBN-Ticker bei mir eingebaut. Es scheint da schon Lösungen zu geben, aber fertige Sachen einbauen; das kann ja jeder. Daher möchte ich hier mal meine Lösung vorstellen.

Genau genommen lese ich nur die feed.rss in ein Array, durchsuche dieses anschließend nach <link> und <title>, lösche dann alle tags, und spucke das übrig gebliebene als kleine Liste aus. Das wars schon!
Mehr Daten brauche ich nicht für meinen kleinen Newsticker, was sich aber sehr einfach erweitern ließe...

Hier also der Code:

<?php
$feed = file("http://osbn.de/feed.rss");
$item = 0;
foreach ($feed as $key => $value)
  {
   $feed[$key] = trim($value);
   $feed[$key] = html_entity_decode($feed[$key]);
   if (strcmp($feed[$key],"<item>") == 0) $item++;
   if ($item == 0) { unset($feed[$key]); continue; }
   if ($item > 0 and $item < 9)
     {
      if (strncmp($feed[$key],"<link>",6) == 0 or strncmp($feed[$key],"<title>",7) == 0) 
        {
         if (strncmp($feed[$key],"<link>",6) == 0) $descr = "link";
         if (strncmp($feed[$key],"<title>",7) == 0) $descr = "title";
         $tags = array("<link>", "</link>", "<title>", "</title>", "<![CDATA[", "]]>");
         $data[$item][$descr] = str_replace($tags, "", $feed[$key]);
        }
      else { unset($feed[$key]); continue; }
     }
  }
unset($feed);

echo "<ul>\n";
foreach ($data as $item => $value)
  {
   echo "<li><a href=\"{$data[$item][link]}\" target=\"_blank\">{$data[$item][title]}</a></li>\n";
  }
echo "</ul>\n";
?>

Zu sehen ist das ganze dann auf meiner Startseite.

Über Verbesserungsvorschläge würde ich mich natürlich sehr freuen!


UPDATE (09.Okt.2014)

Ich merke, daß es nicht so gut ist, alle URLs mit https auszustatten, manche Blogs sind so nicht mehr erreichbar, ich entferne diese Funktion gleich mal!



Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter
Creative Commons Namensnennung 4.0 International .

Kommentare

Kommentar verfassen








😀😁😂😃😄😅😆😇😈😉😊😋😌😍😎😏😐😑😒😓😔😕😖😗😘😙😚😛😜😝😞😟😠😡😢😣😤😥😦😧😨😩😪😫😬😭😮😯😰😱😲😳😴😵😶😷🙁🙂🙃🙄🙅🙆🙇🙈🙉🙊🙋🙌🙍🙎🤐🤑🤒🤓🤔🤕🤖🤗🤘🤠🤡🤢🤣🤤🤥🤦🤧👍𝄞🌍🌹🍻🍾

Datenschutzerklärung

Ihre IP-Adresse, Browserinformation (useragent-string) etc werden von dieser Blogsoftware nicht gespeichert. Trotzdem könnte es sein, daß der Betreiber dieser Webseite solche Daten von Ihnen speichert. Das ist allerdings außerhalb der Reichweite dieser Blogsoftware. Bitte sehen Sie sich die Datenschutzerklärung der Webseite an um mehr darüber zu erfahren!

This blog-software generally doesn't store any information about you. Only if you post a comment, some data will have to be stored. You don't have to input any personal information here. Except for the comment itself, all fields are optional!
If you don't want to tells us your name, that's fine. It will be shown as 'anonymous'.
If you want to receive notifications on following comments, naturally you'll have to give us your email address. It will be stored and not be shared with anybody. If you don't want to be notified, just leave the notifications field empty.
If you want your name to be linked to your website, you'll have to give us your site's address. Otherwise leave this field empty.

Falls Sie einen Kommentar hinterlassen wollen werden folgende Daten gespeichert werden:

  • Zeit und Datum Ihres Kommentars
  • Ihr Name (falls angegeben)
  • Ihre Emailadresse (falls angegeben)
  • Ihre Webseite (falls angegeben)
  • Ihr Kommentar
  • einige technische Informationen, die mit Ihnen nichts zu tun haben, z.Bsp. zu welchem Blogartikel Ihr Kommentar gehört und eine eindeutige ID für Ihren Kommentar