$z = new XMLReader;
$z->open(\'data.xml\');
$doc = new DOMDocument;
// movemos el cursor hasta el primer nodo que nos interese (por ejemplo, )
while ($z->read() && $z->name !== \'producto\');
// vamos navegando por todos los nodos hasta el final del documento
while ($z->name === \'producto\')
{
// cualquiera de estas dos alternativas es válida
//$node = new SimpleXMLElement($z->readOuterXML());
$node = simplexml_import_dom($doc->importNode($z->expand(), true));
// ahora tenemos en $node la información del nodo XML de manera muy accesible
var_dump($node->element_1);
// siguiente nodo
$z->next(\'producto\');
}