Hay algo que no entiendo completamente acerca de la clonación de nodos con la API API de PHP. Aquí hay un archivo de muestra que rápidamente duplica el problema que estoy atravesando.DOMElemento clonando y añadiendo: 'Error de documento incorrecto'
$doc = new DOMDocument('1.0', 'UTF-8');
$root = $doc->createElement('root'); // This doesn't work either $root = new DOMElement('root');
$doc->appendChild($root);
$doc2 = new DOMDocument('1.0', 'UTF-8');
$root2 = $doc2->createElement('root2');
$doc2->appendChild($root2);
// Here comes the error
$root2->appendChild($root->cloneNode());
Cuando se ejecuta este pequeño fragmento se produce una excepción
Fatal error: Uncaught exception 'DOMException' with message 'Wrong Document Error'
¿No puedo agarrar un nodo de un documento, clonarlo, y luego se anexe a otro documento?
Perfecto, gracias. Estaba buscando a través de las API 'DOMNode' y' DOMElement' buscando algo que me permitiera hacer esto y (tontamente) nunca revisé los métodos 'DOMDocument' =/ –
¿Dónde agregaste importNode? Lo agregué a mi código y sigo recibiendo el error. – NobleUplift
@NobleUplift Debe llamar a 'importNode' para importar un nodo de un documento a otro. Después de eso, puede agregarlo como un niño donde desee. – Gumbo