Latest web development tutorials
×

PHP kurs

PHP kurs PHP krótkie wprowadzenie PHP zainstalować PHP gramatyka PHP zmienna PHP echo/print PHP Typy danych PHP stały PHP sznur PHP operatorzy PHP If...Else PHP Switch PHP szyk PHP Sortowanie tablicy PHP superglobalne PHP While krążenie PHP For krążenie PHP funkcja PHP Magiczne Zmienne PHP Przestrzenie nazw PHP Obiektowe

PHP forma

PHP forma PHP Uwierzytelnianie za pomocą formularzy PHP forma - wymagane pola PHP forma - Weryfikacja e-mail i adres URL PHP Kompletna wystąpienie formularza PHP $_GET zmienna PHP $_POST zmienna

PHP zaawansowane Tutorial

PHP Tablice wielowymiarowe PHP data PHP zawierać PHP plik PHP Prześlij plik PHP Cookie PHP Session PHP E-mail PHP bezpieczeństwo E-mail PHP Error PHP Exception PHP filtr PHP Filtr zaawansowany PHP JSON

PHP 7 Nowe funkcje

PHP 7 Nowe funkcje

PHP baza danych

PHP MySQL krótkie wprowadzenie PHP MySQL połączenie PHP MySQL Tworzenie bazy danych PHP MySQL Tworzenie tabeli danych PHP MySQL Należy wprowadzić dane PHP MySQL Wstawić wiele danych PHP MySQL Przygotowane sprawozdania PHP MySQL odczytać dane PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX krótkie wprowadzenie AJAX PHP AJAX baza danych AJAX XML AJAX Wyszukiwanie w czasie rzeczywistym AJAX RSS Reader AJAX głosowanie

PHP Reference Manual

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Przetwarzanie obrazu PHP RESTful

PHP XML parser Expat

Wbudowany w PHP parser Expat umożliwia przetwarzanie dokumentów XML.


Czym jest XML?

XML jest używany do opisania danych i skupić się na danych Tak. Plik XML opisuje strukturę danych.

W XML nie ma predefiniowanych tagów. Musisz zdefiniować własne tagi.

Aby dowiedzieć się więcej o XML, odwiedź naszą samouczek XML .


Co Expat tak?

Aby czytać i aktualizacja - tworzenie i procesu - dokument XML, trzeba parsera XML.

Istnieją dwa podstawowe typy analizatorów składni XML:

  • parser oparty na drzewie: Ten parser przetwarza dokument XML w strukturę drzewa. Analizuje cały dokument, a także zapewnia dostęp do elementów w drzewie, takich jak Document Object Model (DOM).
  • Zdarzenie oparte parser: Dokument XML jako ciąg zdarzeń. Po wystąpieniu określonego zdarzenia, parser wywoła funkcję do procesu.

Expat parser parser jest oparte na zdarzeniach.

Oparte na zdarzeniach parsera skupić się na zawartości dokumentu XML, a nie ich struktury. Z tego powodu, parser oparte na zdarzeniach można uzyskać dostęp do danych szybciej niż drzewa oparte parsera.

Rozważmy następujący fragment XML:

<from>Jani</from>

Parser zdarzeń na podstawie raportów XML powyżej, w postaci serii trzech zdarzeń:

  • elementu Start: od
  • Zacznij sekcja CDATA, wartość: Jani
  • Blisko elementu: od

Przykładem XML powyżej zawiera dobrze uformowane XML. Ale ten przykład nie jest prawidłowy XML, ponieważ deklaracja typu dokumentu (DTD) nie jest związany z nim.

Jednak podczas korzystania z Expat parser, to nie ma znaczenia. Expat parser nie jest sprawdzana pod kątem ważności, ignoruje wszelkie DTD.

Jako, niewalidujący parsera XML zdarzeń opartych Expat szybki i lekki, doskonale nadaje się do aplikacji internetowych PHP.

Uwaga: Dokument XMLmusi być dobrze uformowane, inaczej Expat wygeneruje błąd.


zainstalować

XML parser Expat funkcje są częścią jądra PHP. Instalacja nie jest potrzebne do korzystania z tych funkcji.


plik XML

Plik XML poniżej zostaną wykorzystane w naszym przykładzie:

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


Inicjalizacja parsera XML

Chcemy zainicjować parsera XML w PHP, określa procesor do różnych zdarzeń XML, a następnie analizować pliku XML.

Przykłady

<?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("test.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);
?>

Powyższy kod wyjścia będzie:

-- Note --
To: Tove
From: Jani
Heading: Reminder
Message: Don't forget me this weekend!

Jak to działa:

  1. Przez xml_parser_create () Funkcja inicjalizuje parsera XML
  2. Tworzenie z innej funkcji obsługi zdarzenia
  3. Dodaj xml_set_element_handler () do zdefiniowania, które funkcjonują do wykonania, gdy parser napotka rozpoczęcia i zakończenia tagów
  4. Dodaj xml_set_character_data_handler () do zdefiniowania, które funkcjonują do wykonania, gdy parser napotka dane znakowe
  5. Przez xml_parse () do analizowania pliku "test.xml"
  6. W przypadku wystąpienia błędu, a następnie dodać xml_error_string () funkcji konwersji opis błędu tekstowy XML
  7. xml_parser_free () Wywołanie funkcji, aby zwolnić przydzielony do xml_parser_create () funkcją pamięci

Więcej informacji parser PHP Expat

Aby uzyskać więcej informacji na temat funkcji PHP Expat, odwiedź naszą PHP XML Parser Instrukcja Reference .