Guys really in need of some assistance here. I am reading an xml file and want to loop through the entire file and display the information. Unfortunately I am only showing 1 item. how can I go about showing all news item? I've tried array and loop however I am not versed with any of them. Thanks in advance eg. ------------------------------------------------------------------------- <item> <title>title 1</title> <description>Description 1</description> </item> <item> <title>title 2</title> <description>Description 2</description> </item> <item> <title>title 3</title> <description>Description 3</description> </item> ------------------------------------------------------------------------- My current code +++++++++++++++++++++++++++++++++ function getNews() { $file = NEWS_FILE.".xml"; if(!file_exists($file) || filemtime($file) < time() - 43200) { $this->data = @file_get_contents("http://feeds.mydomain.com/dailynews"); $fp = @fopen($file, 'w'); @fwrite($fp, $this->data); @fclose($fd); } else $this->data = @file_get_contents($file); if(strlen($this->data) <= 0) return; // get the location $attr = explode('<', $this->tag('item')); $return['title'] = $attr[1]; $return['title'] = substr($return['title'], 6); $return['description'] = $attr[7]; $return['description'] = substr($return['description'], 2); return $return; } function view_news() { $currentNews = newsfeed::getNews(); $NEWS= '<strong>'.$currentNews['title'].'</strong><br>'.$currentNews['description'] ..'<br/>'; return $NEWS; } function tag($tag, $skip=0) { $start = -1; for($i = 0; $i <= $skip; $i++) $start = strpos($this->data, "<{$tag}", $start + 1); if($start === false) return false; $start += strlen($tag) + 1; $end = strpos($this->data, "</{$tag}>", $start); if($end === false) $end = strpos($this->data, '/>', $start); return trim(substr($this->data, $start, $end - $start)); }