I have an array that is being returned from a rss feed.
$rss = new DOMDocument();
$rss->load('http://www.rssfeed');
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array (
'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$limit = 5;
for($x=0;$x<$limit;$x++) {
$title = str_replace(' & ', ' & ', $feed[$x]['title']);
$link = $feed[$x]['link'];
$description = $feed[$x]['desc'];
$date = date('l F d, Y', strtotime($feed[$x]['date']));
echo '<div><strong><a href="'.$link.'" title="'.$title.'">'.$title.'</a></strong><br />';
echo $description.'</div>';
}
The $description
variable is an array value, which is a table. So i can't format the content of the table without putting it in an array.
<table border="0" cellpadding="8"><tbody><tr><td width="80px"><a href="http://www.ebay.co.uk/example"><img border="0" src="http://example.jpg"></a></td><td><div><span><strong>£145.00</strong></span></div><div>End Date: <span>13-Aug 16:14</span></div><div>Buy It Now for only: US £145.00</div><a href="http://www.ebay.co.uk/example">Buy it now</a><span> | </span><a href="http://cgi1.ebay.co.uk/example">Add to watch list</a></td></tr></tbody></table>
How do i get the content(including tags) of td
and put into an array?
I tried this but the array values are blank.
$table = new DOMDocument();
$table->loadHTML($description);
$new_table = array();
foreach ($table->getElementsByTagName('tr') as $node) {
$item = array (
'cell' => $node->getElementsByTagName('td')->item(0)->nodeValue
);
array_push($new_table, $item);
}