Encuentre recursivamente todos los nodos de un XML que tenga un argumento determinado con PHP/simpleXML

StackOverflow https://stackoverflow.com/questions/520761

  •  21-08-2019
  •  | 
  •  

Pregunta

Como dije en el título, me preguntaba si sería posible y cómo analizar recursivamente un documento XML y devolver todos los nodos que tienen un argumento determinado.

Lo que realmente estoy tratando de hacer es cargar un documento XHTML y devolver todos los nodos (nodos P, nodos DIV, etc.) que tienen una clase igual a un valor previamente definido.

¿Fue útil?

Solución

Utilice xpath para buscar los nodos, luego simplemente recorra:

$xml = new SimpleXMLElement($string);
$nodes = $xml->xpath("//*[@class='myclass']");

foreach ($nodes as $node) {
    // ...
}

(En realidad no lo he probado, pero debería ser correcto).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top