PHP handleiding

PHP TUIS PHP Inleiding PHP installeer PHP sintaksis PHP opmerkings PHP veranderlikes PHP Echo / Druk PHP datatipes PHP Strings PHP-nommers PHP Wiskunde PHP konstante PHP-operateurs PHP As...Anders...Elseif PHP skakelaar PHP-lusse PHP funksies PHP-skikkings PHP Superglobals PHP RegEx

PHP- vorms

PHP-vormhantering PHP-vorm validering PHP-vorm word vereis PHP-vorm URL/e-pos PHP-vorm voltooi

PHP Gevorderd

PHP datum en tyd PHP sluit in PHP-lêerhantering PHP-lêer oop/lees PHP-lêer skep/skryf PHP-lêer oplaai PHP-koekies PHP-sessies PHP filters PHP-filters Gevorderd PHP-terugbelfunksies PHP JSON PHP-uitsonderings

PHP OOP

PHP Wat is OOP PHP Klasse/Objekte PHP Konstrukteur PHP vernietiger PHP Toegangswysigers PHP erfenis PHP konstante PHP Abstrakte Klasse PHP-koppelvlakke PHP eienskappe PHP statiese metodes PHP Statiese Eienskappe PHP naamruimtes PHP Iterables

MySQL- databasis

MySQL-databasis MySQL Connect MySQL Skep DB MySQL Skep tabel MySQL Voeg data in MySQL Kry Laaste ID MySQL Voeg veelvuldige in MySQL voorberei MySQL Kies Data MySQL Waar MySQL Bestel deur MySQL verwyder data MySQL-opdateringsdata MySQL-limietdata

PHP XML

PHP XML-ontleders PHP SimpleXML-ontleder PHP SimpleXML - Kry PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Intro AJAX PHP AJAX-databasis AJAX XML AJAX Live Search AJAX-peiling

PHP voorbeelde

PHP voorbeelde PHP samesteller PHP vasvra PHP Oefeninge PHP-sertifikaat

PHP- verwysing

PHP Oorsig PHP Skikking PHP-kalender PHP datum PHP gids PHP fout PHP-uitsondering PHP lêerstelsel PHP filter PHP FTP PHP JSON PHP sleutelwoorde PHP Libxml PHP-pos PHP Wiskunde PHP Diverse PHP MySQLi PHP-netwerk PHP-uitsetbeheer PHP RegEx PHP SimpleXML PHP-stroom PHP-string PHP veranderlike hantering PHP XML-ontleder PHP zip PHP Tydsones

PHP XML Expat Parser


Die ingeboude XML Expat Parser maak dit moontlik om XML-dokumente in PHP te verwerk.


Die XML Expat Parser

Die Expat-ontleder is 'n gebeurtenis-gebaseerde ontleder.

Kyk na die volgende XML-breuk:

<from>Jani</from>

'n Gebeurtenisgebaseerde ontleder rapporteer die XML hierbo as 'n reeks van drie gebeurtenisse:

  • Begin element: vanaf
  • Begin CDATA-afdeling, waarde: Jani
  • Beslote element: van

Die XML Expat Parser-funksies is deel van die PHP-kern. Daar is geen installasie nodig om hierdie funksies te gebruik nie.


Die XML-lêer

Die XML-lêer "note.xml" sal in die voorbeeld hieronder gebruik word:

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


Inisialiseer die XML Expat Parser

Ons wil die XML Expat Parser in PHP inisialiseer, 'n paar hanteerders vir verskillende XML-gebeurtenisse definieer, en dan die XML-lêer ontleed.

Voorbeeld

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

Voorbeeld verduidelik:

  1. Inisialiseer die XML-ontleder met die xml_parser_create()funksie
  2. Skep funksies om met die verskillende gebeurtenishanteerders te gebruik
  3. Voeg die xml_set_element_handler()funksie by om te spesifiseer watter funksie uitgevoer sal word wanneer die ontleder die opening- en sluitingmerkers teëkom
  4. Voeg die xml_set_character_data_handler()funksie by om te spesifiseer watter funksie sal uitvoer wanneer die ontleder karakterdata teëkom
  5. Ontleed die lêer "note.xml" met die xml_parse()funksie
  6. In die geval van 'n fout, voeg xml_error_string()funksie by om 'n XML-fout om te skakel na 'n tekstuele beskrywing
  7. Roep die xml_parser_free()funksie om die geheue wat met die xml_parser_create()funksie toegeken is vry te stel

Meer PHP XML Expat Parser

Vir meer inligting oor die PHP Expat-funksies, besoek ons PHP XML Parser Reference .