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 XML Expat


L'analyseur XML Expat intégré permet de traiter des documents XML en PHP.


L'analyseur XML Expat

L'analyseur Expat est un analyseur basé sur les événements.

Regardez la fraction XML suivante :

<from>Jani</from>

Un analyseur basé sur les événements signale le XML ci-dessus sous la forme d'une série de trois événements :

  • Élément de départ : de
  • Démarrer la section CDATA, valeur : Jani
  • Fermer l'élément : de

Les fonctions XML Expat Parser font partie du noyau PHP. Aucune installation n'est nécessaire pour utiliser ces fonctions.


Le fichier XML

Le fichier XML "note.xml" sera utilisé dans l'exemple ci-dessous :

<?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>


Initialisation de l'analyseur XML Expat

Nous voulons initialiser l'analyseur XML Expat en PHP, définir des gestionnaires pour différents événements XML, puis analyser le fichier XML.

Exemple

<?php
// Initialize the XML parser
$parser=xml_parser_create();

// Function to use at the start of an element
function start($parser,$element_name,$element_attrs) {
  switch($element_name) {
    case "NOTE":
    echo "-- Note --<br>";
    break;
    case "TO":
    echo "To: ";
    break;
    case "FROM":
    echo "From: ";
    break;
    case "HEADING":
    echo "Heading: ";
    break;
    case "BODY":
    echo "Message: ";
  }
}

// Function to use at the end of an element
function stop($parser,$element_name) {
  echo "<br>";
}

// Function to use when finding character data
function char($parser,$data) {
  echo $data;
}

// Specify element handler
xml_set_element_handler($parser,"start","stop");

// Specify data handler
xml_set_character_data_handler($parser,"char");

// Open XML file
$fp=fopen("note.xml","r");

// Read data
while ($data=fread($fp,4096)) {
  xml_parse($parser,$data,feof($fp)) or
  die (sprintf("XML Error: %s at line %d",
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
}

// Free the XML parser
xml_parser_free($parser);
?>

Exemple expliqué :

  1. Initialiser l'analyseur XML avec la xml_parser_create()fonction
  2. Créer des fonctions à utiliser avec les différents gestionnaires d'événements
  3. Ajoutez la xml_set_element_handler()fonction pour spécifier quelle fonction sera exécutée lorsque l'analyseur rencontre les balises d'ouverture et de fermeture
  4. Ajoutez la xml_set_character_data_handler()fonction pour spécifier quelle fonction s'exécutera lorsque l'analyseur rencontre des données de caractères
  5. Parser le fichier "note.xml" avec la xml_parse()fonction
  6. En cas d'erreur, ajouter une xml_error_string()fonction pour convertir une erreur XML en une description textuelle
  7. Appelez la xml_parser_free()fonction pour libérer la mémoire allouée avec la xml_parser_create()fonction

Plus d'analyseur PHP XML Expat

Pour plus d'informations sur les fonctions PHP Expat, consultez notre Référence de l'analyseur PHP XML .