Hola a todos/as,
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:
<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>
A continuación tengo una función que me permite recuperar el contenido de "etiqueta2" a partir del contenido de "etiqueta1":
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:
<etiqueta2>En la url<a href="marca.com">Marca</a>aparecen noticias deportivas </etiqueta2>
Y mi funcion getEtiqueta2() para ese caso me devuelve:
"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.