Tutoriel PHP

ACCUEIL PHP Introduction PHP Installation PHP Syntaxe PHP Commentaires PHP Variables PHP Écho PHP / Impression Types de données PHP Chaînes PHP Numéros PHP Mathématiques PHP Constantes PHP Opérateurs PHP PHP Si... Sinon... Sinon Commutateur PHP Boucles PHP Fonctions PHP Tableaux PHP Superglobales PHP Expression régulière PHP

Formulaires PHP

Gestion des formulaires PHP Validation de formulaire PHP Formulaire PHP requis URL/courriel du formulaire PHP Formulaire PHP terminé

PHP Avancé

Date et heure PHP Inclure PHP Gestion des fichiers PHP Fichier PHP Ouvrir/Lire Création/écriture de fichier PHP Téléchargement de fichier PHP Cookies PHP Séances PHP Filtres PHP Filtres PHP avancés Fonctions de rappel PHP PHPJSON Exception PHP

POO PHP

PHP Qu'est-ce que la POO Classes/Objets PHP Constructeur PHP Destructeur PHP Modificateurs d'accès PHP Héritage PHP Constantes PHP Classes abstraites PHP Interface PHP Caractéristiques PHP Méthodes statiques PHP Propriétés statiques PHP Espaces de noms PHP Itérables PHP

Base de données MySQL

Base de données MySQL Connexion MySQL Créer une base de données MySQL Créer une table MySQL MySQL Insérer des données MySQL obtenir le dernier ID MySQL Insérer plusieurs MySQL préparé MySQL Sélectionner les données MySQL Où Trier MySQL par MySQL Supprimer les données Données de mise à jour MySQL Données de limite MySQL

XML PHP

Analyseurs PHP XML Analyseur PHP SimpleXML PHP SimpleXML - Obtenir Expatriation PHP XML PHP XML DOM

PHP -AJAX

Introduction à AJAX PHP AJAX Base de données AJAX XML AJAX Recherche en direct AJAX Sondage AJAX

Exemples PHP

Exemples PHP Compilateur PHP Questionnaire PHP Exercices PHP Certificat PHP

Référence PHP

Présentation de PHP Tableau PHP Calendrier PHP Date PHP Annuaire PHP Erreur PHP Exception PHP Système de fichiers PHP Filtre PHP FTP PHP PHPJSON Mots clés PHP PHP LibxmlComment Messagerie PHP Mathématiques PHP Divers PHP PHP MySQL Réseau PHP Contrôle de sortie PHP Expression régulière PHP PHP SimpleXML Flux PHP Chaîne PHP Gestion des variables PHP Analyseur PHP XML Code postal PHP Fuseaux horaires PHP

Analyseur PHP SimpleXML


SimpleXML est une extension PHP qui nous permet de manipuler et d'obtenir facilement des données XML.


L'analyseur SimpleXML

SimpleXML est un analyseur arborescent.

SimpleXML permet d'obtenir facilement le nom, les attributs et le contenu textuel d'un élément si vous connaissez la structure ou la mise en page du document XML.

SimpleXML transforme un document XML en une structure de données que vous pouvez parcourir comme une collection de tableaux et d'objets.

Comparé à DOM ou à l'analyseur Expat, SimpleXML prend moins de lignes de code pour lire les données textuelles d'un élément.


Installation

Depuis PHP 5, les fonctions SimpleXML font partie du noyau PHP. Aucune installation n'est requise pour utiliser ces fonctions.


PHP SimpleXML - Lire à partir de la chaîne

La fonction PHP simplexml_load_string()est utilisée pour lire des données XML à partir d'une chaîne.

Supposons que nous ayons une variable contenant des données XML, comme ceci :

$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

L'exemple ci-dessous montre comment utiliser la simplexml_load_string()fonction pour lire des données XML à partir d'une chaîne :

Exemple

<?php
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>";

$xml=simplexml_load_string($myXMLData) or die("Error: Cannot create object");
print_r($xml);
?>

La sortie du code ci-dessus sera :

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

Conseil de gestion des erreurs : utilisez la fonctionnalité libxml pour récupérer toutes les erreurs XML lors du chargement du document, puis itérer sur les erreurs. L'exemple suivant tente de charger une chaîne XML brisée :

Exemple

<?php
libxml_use_internal_errors(true);
$myXMLData =
"<?xml version='1.0' encoding='UTF-8'?>
<document>
<user>John Doe</wronguser>
<email>[email protected]</wrongemail>
</document>";

$xml = simplexml_load_string($myXMLData);
if ($xml === false) {
  echo "Failed loading XML: ";
  foreach(libxml_get_errors() as $error) {
    echo "<br>", $error->message;
  }
} else {
  print_r($xml);
}
?>

La sortie du code ci-dessus sera :

Failed loading XML:
Opening and ending tag mismatch: user line 3 and wronguser
Opening and ending tag mismatch: email line 4 and wrongemail


PHP SimpleXML - Lire à partir du fichier

La fonction PHP simplexml_load_file()est utilisée pour lire des données XML à partir d'un fichier.

Supposons que nous ayons un fichier XML appelé " note.xml ", qui ressemble à ceci :

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

L'exemple ci-dessous montre comment utiliser la simplexml_load_file()fonction pour lire les données XML d'un fichier :

Exemple

<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot create object");
print_r($xml);
?>

La sortie du code ci-dessus sera :

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don't forget me this weekend! )

Astuce : Le chapitre suivant montre comment obtenir/récupérer les valeurs des nœuds d'un fichier XML avec SimpleXML !


Plus PHP SimpleXML

Pour plus d'informations sur les fonctions PHP SimpleXML, consultez notre Référence PHP SimpleXML .