I'm trying to parse a string containing an HTML table using the
builtin DOM classes and running into an odd problem.
Here's what I'm doing:
$dom = new DOMDocument();
$dom->loadHTML($str);
$tables = $dom->getElementsByTagName("table");
$rows = $tables->item(0)->getElementsByTagName('tr');
foreach($rows as $row){
foreach($row->childNodes as $node)
// stuff
}
This gives me the row elements in order and access to their contents.
The weird part is $node always appears to be a td tag - even when it's
a th tag in the original string (DOMElement::tagName is always "td"
(as well as DOMNode::nodeName and DOMNode::localName)). The th tags
definitely aren't being omitted; I still get nodes with their
contents, just with the wrong tag name.
Is there any way to override this behavior so that I can distinguish
between td tags and th tags?
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php