coconut123: Bestimmte Daten aus Rss-Fread löschen

Hallo zusammen!

Mit php hab ich mir einen Fread-reader zusammengebastelt:

  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
<html>  
<head>  
  <title>Feedreader</title>  
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">  
</head>  
<body>  
<h1>Wm 2010 - News</h1>  
<?php  
$output = "";  
$url = "http://rss.feedsportal.com/c/490/f/7017/index.rss";  
$rss = file_get_contents($url);  
preg_match_all("|<item>(.*?)</item>|si", $rss, $item);  
foreach($item[1] as $item) {  
  preg_match("|<title>(.*)</title>|si", $item, $title);  
  $output .= "<h3>$title[1]</h3>";  
  preg_match("|<description>(.*)</description>|si", $item, $description);  
  $output .= "<p>$description[1]</p>";  
  preg_match("|<link>(.*)</link>|si", $item, $link);  
  $output .= "<div><a href='$link[1]'>mehr lesen</a></div><hr>";  
}  
$output = utf8_decode($output);  
$output = htmlspecialchars_decode($output);  
$suchmuster = "(.*)";  
$ersatz = "";  
$output = preg_replace(|(.*)|si, $ersatz, $description);  
echo $output;  
  
?>  
</body>  
</html>  

Meine Frage nun: Im ausgewählten Fread (http://rss.feedsportal.com/c/490/f/7017/index.rss) sind am Ende so bookmark-dinger und email, naja ihr seht's ja. Also, wie krieg ich die am besten weg? Habs mal mit preg_replace("|&lt;(.*?)&gt;|si"), "", $variable);  versucht, was hervorrufen sollte, das alles zwischen < und > gelöscht wird, wobei < und > hier &lt; und &gt; sind...
Auch substring ist hier bescheuert. Habt ihr ideen?
Vielen Dank schonmal, mfg cocnut

  1. PS: Wie ihr seht ist das preg replace schon eingebaut, funzt aba nich...

    1. OK, dann lass ich description weg, nimmt eh zuviel platz weg...
      Auf zur neuen Frage...

  2. Moin!

    Mit php hab ich mir einen Fread-reader zusammengebastelt:

    Warum?

    Es gibt tolle Klassen, die dir den gesamten Overhead des RSS-Einlesens, Parsens, Verstehens und Ausgebens abnehmen, und du dich auf die eigentliche Aufgabe konzentrieren kannst.

    SimplePie wäre da mein Favorit.

    Damit dürften sich alle deine weiteren Fragen auch erledigen - vorausgesetzt, du liest die Doku.

    - Sven Rautenberg

    1. Moi zurück!

      Erstes: Ich will News auf einer PHP-Seite für ein WM-Tippspiel ausgeben...

      Zweitens: Der Auftrag stamt von meinem Tutor: "Ihr müsst euch allse selba zusammenbasteln" - na toll ;-(

      Na dann, coconut

      1. Erstes: Ich will News auf einer PHP-Seite für ein WM-Tippspiel ausgeben...

        Wo du das ausgibst, ist ansich nebensächlich - ob das eine Textdatei, eine Datenbank oder HTML wird ist völlig egal.

        Zweitens: Der Auftrag stamt von meinem Tutor: "Ihr müsst euch allse selba zusammenbasteln" - na toll ;-(

        Dann nimm einen XML-Parser wie SimpleXML der erledigt deine PCRE-Wüste mit 2 bis 3 Zeilen. XML parsen können XML-Parser nämlich verdammt gut, PCRE sind dafür eher ungeeignet :)

        1. XML lesen (simplexml_load_file())
        2. gewünschte(n) Knoten finden (xpath())
        3. entsprechende Knoten aus dem DOM entfernen (z.B. hier beschrieben)
        1. Schon klar suit, aaaaaaaaaber:

          simple_xml ist zwar ansich toll, leider aber erst ab php 5

          ich benutze file_get_contents, weil das schon bei 4.3 vorkommt.

          uuuuund: unser webserver bietet zwar php5 an, ich muss das für meine skripte aber erst einschalten, uuuuuuund dazu hab' ich keine berechtigung!

          als dann, coconut

          1. ich benutze file_get_contents, weil das schon bei 4.3 vorkommt.

            uuuuund: unser webserver bietet zwar php5 an, ich muss das für meine skripte aber erst einschalten, uuuuuuund dazu hab' ich keine berechtigung!

            Kannst du deinem Tutor weitergeben, dass PHP 4 antik ist, der aktuelleste "Entwicklungszweig" ist von 2005 und wird offiziell auch nicht mehr nuterstüzt. PHP 4.3 ist gar von 2002 - das ist 8 (!) Jahre alt.

            Aktuell unterstützt wird PHP 5.2.x und 5.3.x - alles drunter ist potentiell gefährlich.

            Wenn das alles nichts hilft, wirst du wohl oder übel damit arbeiten müssen - dann wirds etwas verkorkst.