PHP XML DOM parser
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"
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!
