PHP SimpleXML
PHP SimpleXML
PHP SimpleXML gère les taches XML les plus courantes, laissant le reste à d'autres extensions.
Qu'est-ce que PHP SimpleXML??
SimpleXML est une nouvelle fonctionnalité de PHP 5.
L'extension SimpleXML fournit un moyen simple d'obtenir le nom et le texte d'un élément XML.
Comparé aux analyseurs DOM ou Expat, SimpleXML peut lire des données texte à partir d'éléments XML en quelques lignes de code seulement.
SimpleXML peut convertir un document XML (ou une cha?ne XML) en objet, tel que?:
1 L'élément est converti en un seul attribut de l'objet SimpleXMLElement. Lorsqu'il y a plusieurs éléments au même niveau, ils sont placés dans un tableau.
2. Les propriétés sont accessibles à l'aide d'un tableau associatif, où l'index correspond au nom de la propriété.
3. Le texte à l'intérieur de l'élément est converti en cha?ne. Si un élément possède plusieurs n?uds de texte, ils sont classés dans l'ordre dans lequel ils se trouvent.
SimpleXML est très rapide à utiliser lors de l'exécution de taches de base telles que les suivantes?:
1. Lire/extraire des données de fichiers/cha?nes XML
2. Modifier un n?ud de texte ou un attribut.
Cependant, lorsqu'il s'agit de XML avancé, tel que les espaces de noms, il est préférable d'utiliser l'analyseur Expat ou le XML DOM.
Installation
à partir de PHP 5, les fonctions SimpleXML font partie du noyau PHP. Aucune installation n'est requise pour utiliser ces fonctions.
Exemple PHP SimpleXML
Supposons que nous ayons le fichier XML suivant, "note.xml"?:
<?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>
Maintenant, nous Vous souhaitez afficher différentes informations du fichier XML ci-dessus?:
Exemple 1
Sortir les clés et les éléments de la variable $xml (qui est un objet SimpleXMLElement)?:
<?php $xml=simplexml_load_file("note.xml"); print_r($xml); ?>
Exécuter un exemple?
Le code ci-dessus affichera?:
Objet SimpleXMLElement ( [to] => Tove [from] => Jani [heading] => ; Rappel [body] => Ne m'oubliez pas ce week-end )
Instance 2
Données de sortie pour chaque élément du fichier XML?:
<?php $xml=simplexml_load_file("note.xml"); echo $xml->to . "<br>"; echo $xml->from . "<br>"; echo $xml->heading . "<br>"; echo $xml->body; ?>
Exécuter l'instance?
Le code ci-dessus affichera?:
Tove
Jani
Rappel
Ne m'oubliez pas ce week-end !
Exemple 3
Sortez le nom de chaque élément enfant et les données du n?ud?:
<?php $xml=simplexml_load_file("note.xml"); echo $xml->getName() . "<br>"; foreach($xml->children() as $child) { echo $child->getName() . ": " . $child . "<br>"; } ?>
Exécuter l'instance?
Le code ci-dessus affichera?:
note
à : Tove
de : Jani
rubrique : Rappel
corps : Ne m'oublie pas ce week-end !
Plus d'informations à propos de PHP SimpleXML
Pour en savoir plus sur les fonctions PHP SimpleXML, visitez notre manuel de référence PHP SimpleXML.