PHP XML DOM


PHP XML DOM

L'analyseur intégré dans les DOM, il est possible de traiter les documents XML en PHP.

Qu'est-ce que DOM?

Le DOM du W3C fournit un ensemble standard d'objets pour les documents HTML et XML, et une interface standard pour accéder et les manipuler. Le DOM du W3C est séparé en différentes parties (Core, XML, et HTML) et les différents niveaux (DOM Level 1/2 / 3): * DOM Core - définit un ensemble standard d'objets pour n'importe quel document structuré * DOM XML - définit un ensemble standard d'objets pour les documents XML * DOM HTML - définit un ensemble standard d'objets pour les documents HTML Si vous voulez en savoir plus sur le DOM XML, s'il vous plaît visitez notretutoriel XML DOM .








XML Parsing

Pour lire et mettre à jour - de créer et de manipuler - un document XML, vous aurez besoin d'un analyseur XML.
Il existe deux types de base de parseurs XML:
  • Arbre basé sur l'analyseur: Cet analyseur transforme un document XML en une structure arborescente. Il analyse l'ensemble du document, et donne accès à des éléments de l'arborescence
  • Basé sur des événements analyseur: Vues d'un document XML comme une série d'événements. Quand un événement spécifique se produit, il appelle une fonction pour y faire face
Le parseur DOM est un analyseur à base d'arbres.
Regardez la fraction document XML suivant:
<?xml version="1.0" encoding="ISO-8859-1"?>
<from>Jani</from>
Le DOM XML voit le XML ci-dessus sous forme d'arborescence:
  • Niveau 1: Document XML
  • Niveau 2: L'élément racine: <from>
  • Niveau 3: élément de texte: "Jani"

Installation

Les fonctions DOM analyseur XML font partie du coeur de PHP. Il n'y a pas d'installation nécessaire pour utiliser ces fonctions.

Un fichier XML

Le fichier XML ci-dessous sera utilisé dans notre exemple:
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>


De charge et de sortie XML

Nous voulons pour initialiser l'analyseur XML, charger le xml, et il afficher:

Exemple

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");

print $xmlDoc->saveXML();
?>
La sortie du code ci-dessus sera:
Tove Jani Reminder Don't forget me this weekend!
Si vous sélectionnez "Voir le texte source" dans la fenêtre du navigateur, vous verrez le code HTML suivant:
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
L'exemple ci-dessus crée un objet DOMDocument-Object et charge le XML à partir d'"note.xml" en elle.
Ensuite, le saveXML () fonction met le document XML interne en une chaîne, afin que nous puissions sortir.

Looping à travers du XML

Nous voulons pour initialiser l'analyseur XML, charger le XML, et la boucle à travers tous les éléments de l'élément <note>:

Exemple

<?php
$xmlDoc = new DOMDocument();
$xmlDoc->load("note.xml");

$x = $xmlDoc->documentElement;
foreach ($x->childNodes AS $item)
  {
  print $item->nodeName . " = " . $item->nodeValue . "<br />";
  }
?>
La sortie du code ci-dessus sera:
#text =
to = Tove
#text =
from = Jani
#text =
heading = Reminder
#text =
body = Don't forget me this weekend!
#text =
Dans l'exemple ci-dessus vous voyez qu'il ya des nœuds de texte vides entre chaque élément.
Lorsque le code XML génère, elle contient souvent blancs-espaces entre les nœuds. L'analyseur XML DOM traite ces éléments comme ordinaires, et si vous n'êtes pas conscient d'eux, ils causent parfois des problèmes.

Si vous voulez en savoir plus sur le DOM XML, s'il vous plaît visitez notre tutoriel XML DOM .

3 commentaires:

  1. This is my first time pay a quick visit at here and i am genuinely impressed to read all
    at single place.
    cleaning hardwood floors

    ReplyDelete
  2. excellent points altogether, you just won a logo new reader.
    What would you suggest about your put up that you made a few days ago?
    Any certain?
    new york city car accident lawyers

    Here is my web blog; online stopwatch

    ReplyDelete

HELLO VISITORS THANKS FOR YOUR VISIT AND COMMENT