Uncaught exception DOMException' avec le message "de la Hiérarchie Demande d'Erreur'
J'obtiens une erreur lors du remplacement ou de l'ajout d'un enfant dans un nœud.
Requis :
Je veux le changer..
<?xml version="1.0"?>
<contacts>
<person>Adam</person>
<person>Eva</person>
<person>John</person>
<person>Thomas</person>
</contacts>
comme ce
<?xml version="1.0"?>
<contacts>
<person>Adam</person>
<p>
<person>Eva</person>
</p>
<person>John</person>
<person>Thomas</person>
</contacts>
erreur est
Fatal error: Uncaught exception DOMException' avec le message "de la Hiérarchie Demande d'Erreur'
mon code est
function changeTagName($changeble) {
for ($index = 0; $index < count($changeble); $index++) {
$new = $xmlDoc->createElement("p");
$new ->setAttribute("channel", "wp.com");
$new ->appendChild($changeble[$index]);
$old = $changeble[$index];
$result = $old->parentNode->replaceChild($new , $old);
}
}
vous pouvez voir xml exigence en question les détails...
quand j'essaie de l'utiliser replaceChild son erreur en disant: "de la Hiérarchie Demande d'Erreur" je ne reçois pas idée de ce que je fais erreur
Je veux juste un nœud est nécessaire pour être placé dans la balise p thats it.
yep sûr que la prochaine fois.. merci pour la suggestion..
J'ai restauré le XML d'origine des exemples alors c'est mieux de comprendre et alignés avec la réponse. J'espère que vous n'avez pas l'esprit.
quand j'essaie de l'utiliser replaceChild son erreur en disant: "de la Hiérarchie Demande d'Erreur" je ne reçois pas idée de ce que je fais erreur
Je veux juste un nœud est nécessaire pour être placé dans la balise p thats it.
yep sûr que la prochaine fois.. merci pour la suggestion..
J'ai restauré le XML d'origine des exemples alors c'est mieux de comprendre et alignés avec la réponse. J'espère que vous n'avez pas l'esprit.
OriginalL'auteur Chandan Pasunoori | 2013-05-02
Vous devez vous connecter pour publier un commentaire.
L'erreur Hiérarchie Demande d'Erreur avec DOMDocument en PHP signifie que vous essayez de déplacer un nœud en elle-même. A comparer avec le serpent dans l'image suivante:
Similaire, c'est avec votre nœud. Vous déplacez le nœud en elle-même. Cela signifie que, au moment où vous souhaitez remplacer la personne avec le paragraphe, la personne est déjà un des enfants de l'alinéa.
La appendChild() méthode déjà se déplace la personne hors de l'arborescence DOM, il n'est pas de la partie plus:
Eva est déjà allé. Son parentNode est le point déjà.
Donc, au Lieu de cela vous voulez remplacer, puis ajoutez l'enfant:
Maintenant tout va bien.
La bonne réponse. Merci.
OriginalL'auteur hakre