PHP
PHP / MySql

Recherche
 
ManuelPHP.com

DomNode->add_namespace
<<<
DomNode->append_child DomNode->append_sibling
>>>

8.29 Fonctions DOM XML
8 Référence des fonctions
 Manuel PHP

Introduction
Pré-requis
Installation
Fonctions dépréciées
Constantes pré-définies
Classes
Exemples
DomAttribute->name
DomAttribute->set_value
DomAttribute->specified
DomAttribute->value
DomDocument->add_root
DomDocument->create_attribute
DomDocument->create_cdata_section
DomDocument->create_comment
DomDocument->create_element_ns
DomDocument->create_element
DomDocument->create_entity_reference
DomDocument->create_processing_instruction
DomDocument->create_text_node
DomDocument->doctype
DomDocument->document_element
DomDocument->dump_file
DomDocument->dump_mem
DomDocument->get_element_by_id
DomDocument->get_elements_by_tagname
DomDocument->html_dump_mem
DomDocument->xinclude
DomDocumentType->entities()
DomDocumentType->internal_subset()
DomDocumentType->name()
DomDocumentType->notations()
DomDocumentType->public_id()
DomDocumentType->system_id()
DomElement->get_attribute_node()
DomElement->get_attribute()
DomElement->get_elements_by_tagname()
DomElement->has_attribute()
DomElement->remove_attribute()
DomElement->set_attribute()
DomElement->tagname()
DomNode->add_namespace
->DomNode->append_child
DomNode->append_sibling
DomNode->attributes
DomNode->child_nodes
DomNode->clone_node
DomNode->dump_node
DomNode->first_child
DomNode->get_content
DomNode->has_attributes
DomNode->has_child_nodes
DomNode->insert_before
DomNode->is_blank_node
DomNode->last_child
DomNode->next_sibling
DomNode->node_name
DomNode->node_type
DomNode->node_value
DomNode->owner_document
DomNode->parent_node
DomNode->prefix
DomNode->previous_sibling
DomNode->remove_child
DomNode->replace_child
DomNode->replace_node
DomNode->set_content
DomNode->set_name
DomNode->set_namespace
DomNode->unlink_node
DomProcessingInstruction->data
DomProcessingInstruction->target
domxml_new_doc
domxml_open_file
domxml_open_mem
domxml_version
domxml_xmltree
domxml_xslt_stylesheet_doc
domxml_xslt_stylesheet_file
domxml_xslt_stylesheet
domxml_xslt_version
DomXsltStylesheet->process()
DomXsltStylesheet->result_dump_file()
DomXsltStylesheet->result_dump_mem()
xpath_eval_expression
xpath_eval
xpath_new_context
xpath_register_ns_auto
xpath_register_ns
xptr_eval
xptr_new_context

8.29.43 DomNode->append_child() Ajoute un nouveau fils à la fin des enfants

[ Exemples avec domnode_append_child ]   CVS uniquement

DOMNode DOMNode  append_child ( DOMNode   newnode )

Cette fonction ajoute un fils à une liste existante de fils ou crée une nouvelle liste de fils.

Retourne le noeud ajouté en cas de succès ou FALSE en cas d'échec.

Version Description
4.3.0 Vous n'êtes plus autorisé d'insérer un noeud à partir d'un autre document.
4.3.0 Avant PHP 4.3.0, le nouveau fils est dupliqué avant d'être ajouté. Par conséquent, le nouveau fils est une copie qui peut être modifiée sans altérer le noeud utilisé dans cette fonction. Si le noeud passé a des fils, ils seront aussi dupliqués, ce qui rend cette fonction pratique pour copier des documents XML complexes. La valeur retournée est le noeud fils ajouté. Si vous voulez apporter des modifications au noeud fils, vous devez utiliser le noeud retourné.
4.3.0 et 4.3.1 Le nouveau fils newnode est d'abord déconnecté de son contexte, s'il est déjà fils d'un DomNode. Le noeud est donc déplacé et n'est plus copié. Ceci est le comportement qui correspond aux spécifications W3C. Si vous avez besoin de l'ancien comportement, utilisez DomNode->clone_node avant d'ajouter.
4.3.2 Le nouveau fils newnode est d'abord déconnecté de son contexte, s'il est déjà dans l'arbre. Les mêmes règles s'appliquent.

L'exemple suivant ajoute un nouveau noeud dans un document, et modifie son attribut align à left .

Ajouter un noeud fils avec dom xml

<?php
$doc
= domxml_new_doc("1.0");
$node = $doc->create_element("para");
$newnode = $doc->append_child($node);
$newnode->set_attribute("align", "left");
?>

L'exemple ci-dessus peut être aussi écrit comme ceci :

Ajouter un noeud fils avec dom xml (méthode 2)

<?php
$doc
= domxml_new_doc("1.0");
$node = $doc->create_element("para");
$node->set_attribute("align", "left");
$newnode = $doc->append_child($node);
?>

Un exemple plus complexe est celui ci-dessous. Il commence par rechercher un élément, le duplique avec ses fils, et l'ajoute comme frère. Finalement, un nouvel attribut est ajouté, et le document complet est publié.

Ajouter un noeud fils avec DOM XML (exemple 3)

<?php
include("exemple.inc");

if(!
$dom = domxml_open_mem($xmlstr)) {
  echo
"Erreur lors de l'analyse du document\n";
  exit;
}

$elements = $dom->get_elements_by_tagname("informaltable");
print_r($elements);
$element = $elements[0];

$parent = $element->parent_node();
$newnode = $parent->append_child($element);
$children = $newnode->children();
$attr = $children[1]->set_attribute("align", "left");

$xmlfile = $dom->dump_mem();
echo
htmlentities($xmlfile);
?>

L'exemple ci-dessus peut aussi être réalisé avec la fonction DomNode->insert_before au lieu de DomNode->append_child .

Vous devriez utiliser DOMNode->appendChild() .

<< DomNode->append_child >>
DomNode->add_namespace Fonctions DOM XML DomNode->append_sibling





Google

Services webmasters

Les manuels
 

ManuelPHP.com © 2003-2012 Tigersun - Crédits
Webmaster Site Internet - Télécharger des Logiciels - Programme TV - Entraide Informatique - Agence de Communication
2018-07-23