Encuentre recursivamente todos los nodos de un XML que tenga un argumento determinado con PHP/simpleXML
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.
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