RSS Feed
^__^

PHP Simple HTML DOM Parser

,

Bin neulich über eine nette Klasse gestolpert, die sich lohnt mal anzuschauen:

PHP Simple HTML DOM Parser

Diese parst HTML und hält es als DOM Baum vor, auf welchem man ‘JQuery like’ Operationen dürchführen kann.

Siehe deren online Beispiel:

// Create DOM from URL or file
$html = file_get_html('http://www.google.com/');

// Find all images 
foreach($html->find('img') as $element) 
       echo $element->src . '<br>';

// Find all links 
foreach($html->find('a') as $element) 
       echo $element->href . '<br>';

Kann man schön mit ScreenScrapen oder mal ein CMS neu erfinden! ;)
Feine Sache!

Ich habe es benutzt um einen AutoLinker zu bauen der über HTML traversiert.
Mit Regulären Ausdrücken bin ich da gescheitert, da diese auch immer Begriffe die schon Links waren ersetzt haben.
Über den DOM Baum ging es ganz gut.

Traversieren geht beispielsweise damit dann so:

$dom = new simple_html_dom;
$dom->load($html, true);

$this->traverse($dom->root);

function traverse($node,$deep=0) {
		if($node->tag !== 'root'){
			$lead = str_repeat('#', $deep);
			echo $node->tag.':<br>';
		}
		$ee = $node->nodes;
		foreach($ee as $c){
			$this->traverse($c,$deep+1);
		}
	}

2 responses to “PHP Simple HTML DOM Parser”

  1. […] This post was mentioned on Twitter by Nerd Press. Nerd Press said: PHP Simple HTML DOM Parser http://tinyurl.com/24or2b2 […]

Leave a Reply

Your email address will not be published. Required fields are marked *