PHP XML DOM parser


ULASHISH

PHP DOM parser

DOM parser PHP da XML hujjatlarini tahlil qilish imkonini beradi.

DOM tahlilchisi daraxtga asoslangan tahlilchi bo‘lib, butun hujjatni xotiraga daraxt tuzilishi sifatida yuklaydi. U butun hujjatni tahlil qiladi va daraxt elementlariga (DOM) kirishni ta’minlaydi.

Daraxtga asoslangan tahlilchi kichikroq XML hujjatlari uchun ideal, lekin katta XML hujjatlari uchun emas, chunki u xotirani juda ko‘p talab qilishi mumkin!

Quyidagi XML hujjat qismiga qarang:

<?xml version="1.0" encoding="UTF-8"?> <note>   <to>Tove</to>

DOM tahlilchisi yuqoridagi XML ni daraxt tuzilishi sifatida ko‘radi:

  • Root element: <eslatma>
  • Ichki element: <to>
  • Matn elementi: "Tove"
Maslahat: DOM Parser PHP yadrosining bir qismidir. O‘rnatish shart emas!

DOM Parser - XMLni yuklash va chiqarish

Quyidagi misollarda "note.xml" XML faylidan foydalaniladi.

PHP DOM tahlilchisi hujjatlarni a ga ajratish uchun DOMDocument classidan foydalanadi Document Object Model (DOM) tuzilishi.

Quyidagi misolda biz DOM parserini ishga tushiramiz va unga "note.xml" dan XMLni yuklaymiz. Keyin saveXML() funksiyasi XML hujjatni stringga joylaydi, shuning uchun uni chiqarishimiz mumkin:

<?php // Initialize DOM parser $xmlDoc = new DOMDocument(); // Load XML file $xmlDoc->load("note.xml"); // Saving all the document print $xmlDoc->saveXML(); ?>

Yuqoridagi kodning natijasi quyidagicha bo‘ladi:

Tove Jani Reminder Don't forget me this weekend!

Brauzer oynasida "Manbani ko‘rish" ni tanlasangiz, quyidagi HTMLni ko‘rasiz:

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


DOM Parser - XML ​​orqali aylanish

Quyidagi misolda biz DOM parserini ishga tushiramiz va unga "note.xml" dan XMLni yuklaymiz. Keyin, biz hamma narsani aylanib chiqamiz <note> elementining asosiy tugunlari:

<?php // Initialize DOM parser $xmlDoc = new DOMDocument(); // Load XML file $xmlDoc->load("note.xml"); $x = $xmlDoc->documentElement; // Loop through child nodes foreach ($x->childNodes AS $item) {   print $item->nodeName . " = " . $item->nodeValue . "<br>"; } ?>

Yuqoridagi kodning natijasi quyidagicha bo‘ladi:

#text = to = Tove #text = from = Jani #text = heading = Reminder #text = body = Don't forget me this weekend! #text =

Maslahat: Yuqoridagi misolda har bir element orasida bo‘sh matn tugunlari mavjud. XML yaratilganda, u ko‘pincha tugunlar orasidagi bo‘shliqlarni o‘z ichiga oladi. DOM tahlilchisi ularni oddiy elementlar sifatida ko‘radi va agar siz ulardan bexabar bo‘lsangiz, ular ba’zan muammolarga olib keladi.


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!