Jump to content

[SOLVED] unexpected T_SL Error?


webmaster1

Recommended Posts

Hi All,

 

I'm using a basic script for a few RSS feeds but I keep on getting the following error:

 

Parse error: syntax error, unexpected T_SL in ...

 

The code is below. Can someone please help? This is really bugging me.

 

<?php
//
// ScarySoftware RSS parser  
// Copyright (c) 2006 Scary Software
// ( Generates HTML from a RSS feeds )
//    
// Licensed Under the Gnu Public License
//

// Here are the feeds - you can add to them or change them 
$RSSFEEDS = array( 
    0 => "http://www.site-reference.com/xml.php?c=all", 
    1 => "http://rss.cnn.com/rss/cnn_topstories.rss", 
    2 => "http://rss.slashdot.org/Slashdot/slashdot", 
); 


// 
//  Makes a pretty HTML page bit from the title,  
//  description and link 
//
function FormatRow($title, $description, $link) {
return <<<HTML 

<!-- RSS FEED ENTRY -->
<p class="feed_title">$title</p>
<p class="feed_description">$description</p>
<a class="feed_link" href="$link" rel="nofollow" target="_blank">Read more...</a>
<p> </p>
<hr size=1>
<!-- END OF RSS FEED ENTRY --> 

HTML;
}

// we'll buffer the output
ob_start();

// Now we make sure that we have a feed selected to work with
if (!isset($feedid)) $feedid = 0;
$rss_url = $RSSFEEDS[$feedid];

// Server friendly page cache
$ttl = 60*60;// 60 secs/min for 60 minutes = 1 hour(360 secs)  
$cachefilename = md5($rss_url);
if (file_exists($cachefilename) && (time() - $ttl < filemtime($cachefilename))) {
    // We recently did the work, so we'll save bandwidth by not doing it again
    include($cachefilename); 
    exit();
}

// Now we read the feed
$rss_feed = file_get_contents($rss_url); 

// Now we replace a few things that may cause problems later
$rss_feed = str_replace("<![CDATA[", "", $rss_feed); 
$rss_feed = str_replace("]]>", "", $rss_feed); 
$rss_feed = str_replace("\n", "", $rss_feed); 

// If there is an image node remove it, we aren't going to use 
// it anyway and it often contains a <title> and <link> 
// that we don't want to match on later. 
$rss_feed = preg_replace('#<image>(.*?)</image>#', '', $rss_feed, 1 ); 

// Now we get the nodes that we're interested in
preg_match_all('#<title>(.*?)</title>#', $rss_feed, $title, PREG_SET_ORDER); 
preg_match_all('#<link>(.*?)</link>#', $rss_feed, $link, PREG_SET_ORDER);
preg_match_all('#<description>(.*?)</description>#', $rss_feed, $description, PREG_SET_ORDER); 

// 
// Now that the RSS/XML is parsed.. Lets Make HTML ! 
// 

// If there is not at least one title, then the feed was empty 
// it happens sometimes, so lets be prepared and do something  
// reasonable
if(count($title) <= 1) 
{
    echo "No news at present, please check back later.<br><br>";
} 
else 
{ 
    // OK Here we go, this is the fun part 

    // Well do up the top 3 entries from the feed
    for ($counter = 1; $counter <= 3; $counter++ ) 
    { 
        // We do a reality check to make sure there is something we can show
        if(!empty($title[$counter][1])) 
        { 
            // Then we'll make a good faith effort to make the title 
            // valid HTML 
            $title[$counter][1] = str_replace("&", "&", $title[$counter][1]);
            $title[$counter][1] = str_replace("'", "'", $title[$counter][1]);     

            // The description often has encoded HTML entities in it, and 
            // we probably don't want these, so we'll decode them
            $description[$counter][1] =  html_entity_decode( $description[$counter][1]);     

            // Now we make a pretty page bit from the data we retrieved from 
            // the RSS feed.  Remember the function FormatRow from the  
            // beginning of the program ?  Here we put it to use.
            $row = FormatRow($title[$counter][1],$description[$counter][1],$link[$counter][1]);

            // And now we'll output the new page bit! 
            echo $row;
        }
    }
}
                
// Finally we'll save a copy of the pretty HTML we just created 
// so that we can skip most of the work next time
$fp = fopen($cachefilename, 'w'); 
fwrite($fp, ob_get_contents()); 
fclose($fp); 

// All Finished! 
ob_end_flush(); // Send the output to the browser

?> 

Link to comment
https://forums.phpfreaks.com/topic/152690-solved-unexpected-t_sl-error/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.