Parse HTML And Traverse DOM In PHP?

I spoke of this the other day, but now I’ve learned of PHP’s DOM functions, including loadHTML(). Use it in combination with simplexml_import_dom like this:

$dom = new domDocument;
$dom->loadHTML('<ul><li>one</li><li>two</li><li>three<ul><li>sublist item</li></ul></li></ul>');
if($dom){
	$xml = simplexml_import_dom($dom);
	print_r($xml);
}

This IBM developerWorks article has some more useful info.

Here’s some code I prototyped to parse out the ISBNs and LCCN (or any data, really) from an an average record in Scriblio:

$dom = new domDocument;
$dom->loadHTML($content);
if($dom){
	$xml = simplexml_import_dom($dom);
}
foreach($xml->body->ul->li as $thing){
	if($thing['class'] == 'isbn'){
		foreach($thing->ul->li as $stuff){
			print_r($stuff);
		}
	}
	if($thing['class'] == 'lccn'){
		foreach($thing->ul->li as $stuff){
			print_r($stuff);
		}
	}
}

Related:

No Comments

No comments yet.

Comments RSS TrackBack Identifier URI

Leave a comment

 

User contributed tags for this post:

php dom html (29) - php parse html (27) - php html dom (20) - php html parser (19) - F (11) - php dom (10) - php DomDocument (10) - html dom php (9) - php html dom parser (8) - www 89 dom (7) - dom php html (6) - php parser html (6) - php dom parse html (6) - php traverse xml (6) - php traverse dom (6) - loadHTML php (6) - php parsing html tags (5) - php dom traverse (5) - php DOMdocument HTML (5) - php DOM xhtml (5) - dom php (4) - DOMDocument html (4) - php dom parser (4) - php5 parse html (4) - php dom parsing (4) - php domdocument parse (4) - stuff (4) - php dom html parser (3) - parse html php function (3) - PHP traverse the HTML DOM tree (3) - WWW:SEX:D (3) - php domdocument foreach (3) - php parsing html (3) - dom loadhtml (3) - dom html php (3) - php html parse (3) - DOMDocument php (3) - parse html php DOM (3) - parse html (3) - traverse domdocument php5 (3) - php parse html dom (3) - php DOM html content (2) - php dom traversal (2) - ipod file format (2) - blog php dom (2) - PHP Traversing XML (2) - php how to parse html to xml (2) - php dom foreach (2) - dom php parser (2) - php parse html file (2) - PHP HTMLPARSER (2) - php xhtml parser (2) - traverse xml php (2) - Traversing DOM with PHP XML (2) - xml dom print_r (2) - php 5 html parse (2) - php5 dom parse (2) - php DOMDocument parse html (2) - dom php parse (2) - sex tv 1 php (2) - www.89.dom (2) - php parsing xhtml (2) - html dom in php (2) - php5 html parsing (2) - php parse (2) - php code to parse html file (2) - html parser php5 (2) - how to use DOM in php (2) - php parse html xml (2) - php parse html file ul (2) - traverse a html file (2) - simplexml parse html (2) - php html parser dom (2) - parse html to dom php (2) - php traverse html (2) - php html tag parser domDocument (2) - Parse html php (2) - php parse xhtml (2) - php dom parse (2) - php parsing post (2) - traverse DOM PHP (2) - php simplexml traverse (2) - php parse dom (2) - traversing the xml dom in php (2) - php parse html body (2) - php parse html function (1) - php parse html find body tag (1) - rss php parse (1) - PHP5 html tags in php (1) - php 4 dom parsing html files (1) - parse html xml dom php 5 (1) - parsing html elements php (1) - php parse XHTML content (1) - php using xml dom parsing html (1) - xhtml parse php (1) - dom html com php (1) - using php to traverse xml (1) - php parse html elements (1) - parsing HTML php5 (1) - php parse bookmarks (1) - traverse domdocument php (1) - php5 dom parsing html files (1) - html parsing in php 5 (1) - php5 html parser (1) - Traversing HTML DOM (1) - simplexml_import_dom html (1) - php html traversing (1) - php domxml parse html (1) - parsing html in php (1) - dom parsing xhtml (1) - php html parsing dom (1) - parsing xml file with dom php5 (1) - parsing the DOM (1) - google php dom (1) - php DOMDocument to html (1) - parsing html within wordpress (1) - html parser with php dom (1) - simplexml php xhtml parse (1) - XML ?????? (1) - traversing the dom ul (1) - php parse html in comments (1) - php parse html tags (1) - parse html dom with php (1) - php traverse xml domdocument (1) - parse DOM with php (1) - php parsing ul li (1) - parse html body (1) - parsing xhtml in php (1) - xhtml dom php (1) - loadHTML parse (1) - html php parser (1) - ?????? html ?? php (1) - PHP DOM HTML parsing (1) - php parse out (1) - php DOMDocument parsing (1) - PHP parse contents of an html tag (1) - how to parse html with Dom (1) - parsing html by dom document in php (1) - parsing html dengan php (1) - parse HTML in PHP (1) - xml DOM parser php (1) - www'89.dom (1) - php parsing a domdocument (1) - html parsing in php (1) - php parser html simplexml (1) - $dom=new DomDocument; parser (1) - dom ul (1) - xml traversing php (1) - php parse html from url (1) - parser dom (1) -