function getRSSFeed($settings) { $url = parse_url($settings["url"]); $settings["headLen"] = (isset($settings["headLen"])) ? $settings["headLen"] : 100; $settings["maxPosts"] = (isset($settings["maxPosts"])) ? $settings["maxPosts"] : 0; $host = $url["host"]; $page = $url["path"].$url["query"]; $response = ""; $fp = fsockopen($host, 80, $errno, $errstr, 30); if (!$fp) { return "$errstr ($errno)
\n"; } else { $out = "GET ".$page." HTTP/1.1\r\n"; $out .= "Host: ".$host."\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp)) { $response .= fgets($fp, 128); } fclose($fp); } $start = strpos($response, "") - 6) * -1; $xml = trim(substr($response, $start, $slut)); $parsed = new SimpleXMLElement($xml); $news = array(); $tmp = array(); $i = 0; foreach($parsed->channel->item as $value) { $i++; $tmp["title"] = utf8_decode($value->title); if(strlen($tmp["title"]) > $settings["headLen"]) $tmp["title"] = substr($tmp["title"], 0, $settings["headLen"]-3)."..."; $tmp["pubDate"] = $value->pubDate; $tmp["link"] = $value->link; array_push($news, $tmp); if($i == $settings["maxPosts"]) break; } if(count($news) == 0) return false; return $news; } Den bruges således: $feed["url"] = http://borsen.dk/newsfeed/rss/?categoryId=1; // URL til dit feed $feed["headLen"] = 100; //Overskriftslængden - standard er 100 $feed["maxPosts"] = 5; //antal nyheder du vil have - standard er 5 $fetched = getRSSFeed($feed); foreach($fetched as $value) { echo $value["title"]; //Overskriften echo $value["pubDate"]; //Tiden echo $value["link"]; //Linket }