Výukový program PHP XML: Tvorba, analýza, čítanie s príkladom

Obsah:

Anonim

Čo je to XML?

XML je skratka pre Extensible Markup Language.

XML sa používa na štruktúrovanie, ukladanie a prenos údajov z jedného systému do druhého.

XML je podobné HTML.

Používa otváracie a zatváracie značky.

Na rozdiel od HTML umožňuje XML používateľom definovať svoje vlastné značky.

V tomto návode sa naučíte

  • Čo je DOM?
  • Analyzátory XML
  • Prečo používať XML?
  • Príklad dokumentu XML
  • Ako čítať XML pomocou PHP
  • Ako vytvoriť dokument XML pomocou PHP

Čo je DOM?

DOM je skratka pre Document Object Model.

Je to multiplatformový a jazykovo neutrálny štandard, ktorý definuje spôsob prístupu a manipulácie s údajmi;

  • HTML
  • XHTML
  • XML

DOM XML sa používa na prístup a manipuláciu s dokumentmi XML. Prezerá dokument XML ako stromovú štruktúru.

Analyzátory XML

Analyzátor XML je program, ktorý prevádza dokument XML na objekt modelu XML Document Object Model (DOM).

S objektom XML DOM potom možno manipulovať pomocou JavaScriptu, Pythonu a PHP atď.

Kľúčové slovo CDATA, ktoré je skratkou pre (Unparsed) Character Data, sa používa na ignorovanie špeciálnych znakov, ako napríklad „<,>“ pri analýze dokumentu XML.

Prečo používať XML?

  • Webové služby ako SOAP a REST používajú na výmenu informácií formát XML. Ak sa naučíte, čo je XML a ako to funguje, získate ako vývojári konkurenčné výhody, pretože moderné aplikácie vo veľkej miere využívajú webové služby.
  • Dokumenty XML možno použiť na uloženie konfiguračných nastavení aplikácie
  • Umožňuje vám vytvárať vlastné vlastné značky, ktoré ju robia flexibilnejšou.

Príklad dokumentu XML

Predpokladajme, že vyvíjate aplikáciu, ktorá získava údaje z webovej služby vo formáte XML.

Nižšie je uvedená ukážka toho, ako vyzerá dokument XML.

Joe Paul
CEOTasha Smith
Finance Manager

TU,

  • " Určuje xml verziu, ktorá sa má použiť a kódovať
  • " je koreňový prvok.
  • … “ sú podradené prvky správy a predaja.

Ako čítať XML pomocou PHP

Poďme teraz napísať kód, ktorý načíta dokument XML zamestnancov a zobrazí výsledky vo webovom prehliadači. Index.php


Employees Listing

';$list = $xml->record;for ($i = 0; $i < count($list); $i++) {echo 'Man no: ' . $list[$i]->attributes()->man_no . '
';echo 'Name: ' . $list[$i]->name . '
';echo 'Position: ' . $list[$i]->position . '

';}?>

TU,

  • „$ Xml = simplexml_load_file ('zamestnanci.xml');“ používa funkciu simplexml_load_file na načítanie názvu súboru zamestnanci.xml a na priradenie obsahu k premennej poľa $ xml.
  • „$ List = $ xml-> record;“ získa obsah uzla záznamu.
  • „For ($ i = 0; $ i
  • „$ List [$ i] -> attributes () -> man_no;“ načíta atribút man_no prvku
  • „$ List [$ i] -> meno;“ načíta hodnotu podradeného prvku name
  • „$ List [$ i] -> pozícia;“ načíta hodnotu podradeného prvku polohy

Testovanie našej aplikácie

Za predpokladu, že ste uložili súbor index.php do priečinka phptus / xml, prejdite na adresu URL http: //localhost/phptuts/xml/index.php

Ako vytvoriť dokument XML pomocou PHP

Teraz sa pozrieme na to, ako vytvoriť dokument XML pomocou PHP.

Vyššie uvedený príklad použijeme v stromovom diagrame DOM.

Nasledujúci kód používa na vytvorenie dokumentu XML PHP zabudované v triede DOMDocument.

encoding = 'utf-8';$dom->xmlVersion = '1.0';$dom->formatOutput = true;$xml_file_name = 'movies_list.xml';$root = $dom->createElement('Movies');$movie_node = $dom->createElement('movie');$attr_movie_id = new DOMAttr('movie_id', '5467');$movie_node->setAttributeNode($attr_movie_id);$child_node_title = $dom->createElement('Title', 'The Campaign');$movie_node->appendChild($child_node_title);$child_node_year = $dom->createElement('Year', 2012);$movie_node->appendChild($child_node_year);$child_node_genre = $dom->createElement('Genre', 'The Campaign');$movie_node->appendChild($child_node_genre);$child_node_ratings = $dom->createElement('Ratings', 6.2);$movie_node->appendChild($child_node_ratings);$root->appendChild($movie_node);$dom->appendChild($root);$dom->save($xml_file_name);echo "$xml_file_name has been successfully created";?>

TU,

  • „$ Dom = new DOMDocument ();“ vytvorí inštanciu triedy DOMDocument.
  • „$ Dom-> encoding = 'utf-8';" nastaví kódovanie dokumentu na utf-8
  • „$ Dom-> xmlVersion = '1.0';“ určuje číslo verzie 1.0
  • „$ Dom-> formatOutput = true;“ zaisťuje, že výstup je dobre naformátovaný
  • „$ Root = $ dom-> createElement („ Movies “);“ vytvorí koreňový uzol s názvom Filmy
  • „$ Attr_movie_id = nový DOMAttr ('film_id', '5467');" definuje atribút id filmu uzla Filmy
  • “$ Child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')" vytvorí podradený uzol uzla Filmy. ElementName špecifikuje názov prvku, napr. Title. ElementValue nastavuje hodnotu podradeného uzla, napr. Kampaň.
  • „$ Root-> appendChild ($ movie_node);“ pripojí prvky movie_node do koreňového uzla Movies
  • „$ Dom-> appendChild ($ root);“ pripojí koreňový uzol k dokumentu XML.
  • „$ Dom-> save ($ xml_file_name);“ uloží súbor XML do koreňového adresára webového servera.
  • „Echo ''. $ xml_file_name. ' bol úspešne vytvorený'; ” vytvorí odkaz na súbor XML.

Testovanie našej aplikácie

Za predpokladu, že ste uložili súbor create_movies_list do priečinka phptuts / xml, prejdite na adresu URL http: //localhost/phptuts/xml/create_movies_list.php

Kliknite na odkaz films_list_xml

Zhrnutie

  • XML je skratka pre Extensible Markup Language
  • XML možno použiť na výmenu informácií medzi systémami alebo na uloženie konfiguračných nastavení aplikácie atď.
  • DOM je skratka pre Document Object Model. XML DOM zobrazuje dokument XML ako stromovú štruktúru
  • Analyzátor XML je program, ktorý prevádza XML dokument XML do stromovej štruktúry DOM ako dokument.
  • CDATA sa používa na ignorovanie špeciálnych znakov pri analýze dokumentov XML.
  • PHP používa simplexml_load_file na čítanie XML dokumentov a vracanie výsledkov ako numerické pole
  • Trieda PHP DOMDocument na vytváranie súborov XML.