<?php
$html = <<< HTML
<html><body>
<p>paragraph</p>
<br/>
</body></html>
HTML;
$tidy = tidy_parse_string($html);
dump_nodes($tidy->root(), 1);
function dump_nodes($node, $indent) {
if($node->hasChildren()) {
foreach($node->child as $child) {
echo str_repeat('.', $indent*2) . ($child->name ? $child->name : '"'.$child->value.'"'). "\n";
dump_nodes($child, $indent+1);
}
}
}
?>
The above example will output:
..html
....head
......title
....body
......p
........"paragraph"
......br