Tenes que crear un objeto SimpleXMLElement, te permite acceder e iterarlo como array, es muy practico.
Código PHP:
$HTMLDocument = new DOMDocument(); //Creo objeto Dom
$HTMLDocument->loadHTMLFile('index.html');//Cargo el archivo html
$HTML = simplexml_import_dom($HTMLDocument);//creo objeto SimpleXMLElement
//podes acceder a los elementos como un objeto
$div1 = $HTML->body->div[0]; //primer elemento div
//tambien podes acceder a cada elemento usando string entre llaves
$div2 = $HTML->{'body'}->div[1]; //segundo elemento div
//asi se acceden a los atributos de cada etiqueta
echo $div1['class'] . '<br />';
//y aca mostramos el nombre del primer div, y la edad del segundo
echo $div1->p[1]->span . '<br />'; //en primer div, segunda etiqueta hija p, hijo span
echo $div2->p[1]->span . '<br />';//lo mismo que arriba con el segundo div
//si queres mostrar una estructura XML como string haces
echo $div1->asXML(); //toda la estructura del primer div
/*TODO ESTO MUESTRA
caja<br />
victoria<br />
26<br />
<div class="caja">
<h3>DATOS</h3>
<p>nombre</p>
<p><span>victoria</span> dato<span> correcto</span></p>
</div>
*/
lee mas aca y divertite jugando:
http://php.net/manual/es/book.simplexml.php
http://php.net/manual/es/simplexml.examples.php
Espero que te haya servido