Kas ir XML?
XML ir paplašināmās iezīmēšanas valodas saīsinājums.
XML tiek izmantots, lai strukturētu, uzglabātu un transportētu datus no vienas sistēmas uz otru.
XML ir līdzīgs HTML.
Tas izmanto sākuma un aizvēršanas tagus.
Atšķirībā no HTML, XML ļauj lietotājiem definēt savus tagus.
Šajā apmācībā jūs uzzināsiet
- Kas ir DOM?
- XML parsētāji
- Kāpēc izmantot XML?
- XML dokumentu piemērs
- Kā lasīt XML, izmantojot PHP
- Kā izveidot XML dokumentu, izmantojot PHP
Kas ir DOM?
DOM ir dokumenta objekta modeļa saīsinājums.
Tas ir starpplatformu un valodas ziņā neitrāls standarts, kas nosaka, kā piekļūt datiem un ar tiem manipulēt;
- HTML
- XHTML
- XML
DOM XML tiek izmantots, lai piekļūtu XML dokumentiem un ar tiem manipulētu. Tas XML dokumentu skata kā koka struktūru.
XML parsētāji
XML parsētājs ir programma, kas pārveido XML dokumentu XML dokumenta objekta modeļa (DOM) objektā.
Pēc tam ar XML DOM objektu var manipulēt, izmantojot JavaScript, Python un PHP utt.
Atslēgvārds CDATA, kas ir rakstzīmju datu (nepārklātu) akronīms, tiek izmantots, lai XML dokumenta parsēšanas laikā ignorētu īpašās rakstzīmes, piemēram, “<,>”.
Kāpēc izmantot XML?
- Tīmekļa pakalpojumi, piemēram, SOAP un REST, informācijas apmaiņai izmanto XML formātu. Uzzinot, kas ir XML un kā tas darbojas, iegūsiet konkurences priekšrocības kā izstrādātājam, jo modernās lietojumprogrammās tiek intensīvi izmantoti tīmekļa pakalpojumi.
- XML dokumentus var izmantot, lai saglabātu lietojumprogrammas konfigurācijas iestatījumus
- Tas ļauj jums izveidot savus pielāgotos tagus, kas padara tos elastīgākus.
XML dokumenta piemērs
Pieņemsim, ka jūs izstrādājat lietojumprogrammu, kas datus no tīmekļa pakalpojuma iegūst XML formātā.
Zemāk ir XML dokumenta izskata paraugs.
Joe Paul CEO Tasha Smith Finance Manager
ŠEIT,
- “ Xml version =" 1.0 "encoding =" utf-8 "?>” Norāda izmantojamo un kodējamo xml versiju
- “
” ir saknes elements. - “
… ” ir attiecīgi administrēšanas un pārdošanas pakārtotie elementi.
Kā lasīt XML, izmantojot PHP
Tagad uzrakstīsim kodu, kas lasīs darbinieku XML dokumentu un parādīs rezultātus tīmekļa pārlūkprogrammā. 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 . '
';}?>
ŠEIT,
- "$ Xml = simplexml_load_file ('darbinieki.xml');" izmanto funkciju simplexml_load_file, lai ielādētu faila nosaukumu darbiniekiem.xml un piešķirtu saturu masīva mainīgajam $ xml.
- “$ List = $ xml-> ieraksts;” iegūst ieraksta mezgla saturu.
- “For ($ i = 0; $ i
- “$ List [$ i] -> atribūti () -> man_no;” skan elementa atribūts man_no
- “$ List [$ i] -> nosaukums;” skan vārda bērna elementa vērtība
- “$ List [$ i] -> pozīcija;” nolasa bērna elementa pozīcijas vērtību
Pārbauda mūsu lietojumprogrammu
Pieņemot, ka failu index.php esat saglabājis mapē phptus / xml, pārlūkojiet vietrādi URL http: //localhost/phptuts/xml/index.php
Kā izveidot XML dokumentu, izmantojot PHP
Tagad mēs apskatīsim, kā izveidot XML dokumentu, izmantojot PHP.
Mēs izmantosim iepriekš minēto piemēru DOM koka diagrammā.
Šis kods XML dokumenta izveidošanai izmanto klasē DOMDocument iebūvēto PHP.
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";?>
ŠEIT,
- “$ Dom = new DOMDocument ();” izveido klases DOMDocument instanci.
- "$ Dom-> encoding = 'utf-8';" iestata dokumentu kodējumu uz utf-8
- “$ Dom-> xmlVersion = '1.0';” norāda versijas numuru 1.0
- “$ Dom-> formatOutput = true;” nodrošina, ka izeja ir labi formatēta
- "$ Root = $ dom-> createElement ('Filmas');" izveido saknes mezglu ar nosaukumu Movies
- "$ Attr_movie_id = jauns DOMAttr ('movie_id', '5467');" definē mezgla Filmas filmas id atribūtu
- “$ Child_node_element_name = $ dom-> createElement ('ElementName', 'ElementValue')” izveido Filmu mezgla pakārtoto mezglu. ElementName norāda elementa nosaukumu, piemēram, Title. ElementValue iestata pakārtotā mezgla vērtību, piemēram, Kampaņa.
- “$ Root-> appendChild ($ movie_node);” pievieno elementu movie_node saknes mezglam Filmas
- “$ Dom-> appendChild ($ root);” pievieno saknes mezglu XML dokumentam.
- “$ Dom-> save ($ xml_file_name);” saglabā XML failu tīmekļa servera saknes direktorijā.
- “Echo ''. $ xml_file_name. ' ir veiksmīgi izveidots'; ” izveido saiti uz XML failu.
Pārbauda mūsu lietojumprogrammu
Pieņemot, ka failu create_movies_list esat saglabājis mapē phptuts / xml, pārlūkojiet URL: http: //localhost/phptuts/xml/create_movies_list.php
Noklikšķiniet uz saites movies_list_xml
Kopsavilkums
- XML ir paplašināmās iezīmēšanas valodas saīsinājums
- XML var izmantot informācijas apmaiņai starp sistēmām vai lietojumprogrammas konfigurācijas iestatījumu saglabāšanai utt.
- DOM ir dokumenta objekta modeļa saīsinājums. XML DOM skata XML dokumentu kā koka struktūru
- XML parsētājs ir programma, kas XML XML dokumentu pārveido par DOM koka struktūru līdzīgu dokumentu.
- CDATA tiek izmantots, lai ignorētu īpašās rakstzīmes, analizējot XML dokumentus.
- PHP izmanto simplexml_load_file, lai lasītu XML dokumentus un atgrieztu rezultātus kā skaitlisku masīvu
- PHP DOMDocument klase, lai izveidotu XML failus.