modificar - php domdocument setattribute
Determinar el nodo primario de DOMElement (2)
Estoy traduciendo mi código C # para comentarios de videos de YouTube en PHP. Para anidar correctamente las respuestas de comentarios, necesito reorganizar los nodos XML. En PHP estoy usando DOMDocument y DOMXPath que se corresponde estrechamente con C # XmlDocument. Llegué bastante lejos en mi traducción, pero ahora estoy atascado en obtener el nodo padre de un elemento DOMElement. Un DOMElement no tiene una propiedad parent_node (), solo un DOMNode proporciona esa propiedad.
Después de determinar que un comentario es una respuesta a un comentario anterior basado en la cadena "in-reply-to" en un elemento de enlace, necesito obtener su nodo principal para anidarlo debajo del comentario al que responde:
// Get the parent entry node of this link element
$importnode = $objReplyXML->importNode($link->parent_node(), true);
No estoy del todo seguro de cómo funciona tu código, pero parece que tienes un pequeño error en tu código.
En la línea que publicó en su pregunta tiene $link->parent_node()
, pero en la respuesta con el fragmento de código completo tiene $link**s**->parent_node()
.
No creo que la s
deba estar allí.
Además, creo que debería usar $ link-> parentNode, not $ link-> parent_node ().
DOMElement es una subclase de DOMNode , por lo que tiene la propiedad parent_node. Simplemente use $ domNode-> parentNode; para encontrar el nodo padre
En su ejemplo, el nodo principal de $ importnode es nulo, porque se ha importado al documento y, por lo tanto, aún no tiene un elemento primario. Debe adjuntarlo a otro elemento antes de que tenga un padre.