Tengo un problema a la hora de leer un fichero XML y espero que alguien "me arroje" un poco de luz sobre ello.
En primer lugar, tengo un XML como éste:
Código:
A continuación tengo una función que me permite recuperar el contenido de "etiqueta2" a partir del contenido de "etiqueta1":<traducciones> <texto> <etiqueta1>title</keyword> <etiqueta2>La casa</traduccion> </texto> <texto> <etiqueta1>texto</keyword> <etiqueta2>En la url<a href="marca.com">Marca</a>aparecen noticias deportivas </etiqueta2> </texto> </traducciones>
function getEtiqueta2($xml, $etiqueta1) {
$path='/traducciones/texto[etiqueta1="'.$etiqueta1.'"]';
$traducciones = $xml->xpath($path);
$traduccion=$traducciones[0];
return $traduccion->traduccion;
}
Mi problema surge cuando en el campo "etiqueta2" contiene a su vez mas etiquetas. Si veis el xml anterior, la segunda etiqueta2 es de la forma:
Código:
Y mi funcion getEtiqueta2() para ese caso me devuelve:<etiqueta2>En la url<a href="marca.com">Marca</a>aparecen noticias deportivas </etiqueta2>
"En la url aparecen noticias deportivas"
No me recupera la parte del texto "<a href="marca.com">Marca</a>
Entiendo que puede ser porque se trata de una etiqueta dentro de otra etiqueta XML y eso no gusta.
Hay alguna manera de poder recuperar todo el contenido de "etiqueta2" aunque dentro de ella existan otras etiquetas?????
Saludos.