Deux classes principales sont définies dans la librairie DOM XML. Il s'agît des classes DOMDocument et DOMNode.

Ces deux classes possèdent chacunes des méthodes et des propriétés spécifiques permettant de récupérer ou d'ajouter des informations.

La classe DOMDocument Les méthodes
Nom Fonction
Description
root domxml_root()
retourne le noeud racine du document XML.
children domxml_children()
retourne un tableau contenant les enfants du document XML.
add_root domxml_add_root()
ajoute un nouveau noeud racine à un document XML.
dtd domxml_intdtd()
retourne la déclaration de type de document.
dumpmem domxml_dumpmem()
retourne une chaîne de caractères rerésentant les données du document XML.
xpath_init xpath_init()
initialise une expression XPath.
xpath_new_context xpath_new_context()
crée un nouveau contexte pour une expression XPath.
xptr_new_context xptr_new_context()
crée un nouveau contexte pour un pointeur.
Les propriétés
Nom Type
Description
doc class DOMDocument
retourne l'objet DOMDocument lui-même.
name chaîne
retourne le nom du document XML.
url chaîne
retourne l'adresse URL du document XML.
version chaîne
retourne le numéro de version de XML.
encoding chaîne
retourne l'encodage du document XML.
standalone entier long
indique si le document XML est autonome.
type entier long
indique le type du document XML.
compression entier long
indique si le fichier est compressé.
charset entier long
retourne le jeu de caractères du document XML.
La classe DOMNode Les méthodes
Nom Fonction
Description
lastchild domxml_last_child()
retourne le dernier enfant du noeud courant.
children domxml_children()
retourne une liste des noeuds enfants dans un tableau.
parent domxml_parent()
retourne le noeud parent du noeud courant.
new_child domxml_new_child()
ajoute un nouvel enfant au noeud courant.
get_attribute domxml_get_attribute()
retourne la valeur d'un attribut du noeud courant.
set_attribute domxml_set_attribute()
fixe la valeur d'un attribut du noeud courant.
attributes domxml_attributes()
retourne une liste d'attributs du noeud courant.
node domxml_node()
retourne un noeud.
set_content domxml_set_content()
fixe le contenu du noeud courant.
Les propriétés
Nom Type
Description
node class DomNode
retourne l'objet DOMNode lui-même.
type entier long
retourne le type du noeud courant.
name chaîne
retourne le nom du noeud courant.
content chaîne
retourne le contenu du noeud courant.
Exemple [voir]
<?php
  $chaine_xml = '<? xml version="1.0" ?>'
                . '<element_racine>'
                . '<element_enfant_1>Première valeur</element_enfant_1>'
                . '<element_enfant_2 attribut="valeur attribut">'
                . 'Seconde valeur'
                . '</element_enfant_2>'
                . '</element_racine>';
  $document = xmldoc($chaine_xml);

  $element_racine = $document->root();

  $noeuds = $element_racine->children();

  while ($noeud = array_shift($noeuds))
  {
    if ($noeud->name == "element_enfant_2")
    {
      $enfant = $noeud;
      break;
    }
  }

  $attribut = $enfant->getattr("attribut");

  $texte_noeud = array_shift($enfant->children());

  $valeur = $texte_noeud->content;

  echo '<u>Contenu du second élément enfant :</u> '
          . '<b>' . $texte . '</b>'
          . '<br><u>Contenu de son attribut :</u> '
          . '<b>' . $attribut . '</b>';
?>