မျက်မှောက်ခေတ်ဝက်ဘ်လျှောက်လွှာဖွံ့ဖြိုးတိုးတက်မှုတွင် XML (adultible markup language) သည်ဒေတာဖလှယ်ရေးပုံစံများထဲမှတစ်ခုဖြစ်ပြီးအခြေအနေများစွာတွင်ကျယ်ပြန့်စွာအသုံးပြုနေဆဲဖြစ်သည်။ PHP သည် XML အတွက်လုပ်ဆောင်ချက်များအတွက် function libraries အမျိုးမျိုးကိုထောက်ပံ့ပေးသည် ။ ဤဆောင်းပါးသည်ဤနည်းစနစ်နှစ်ခုကိုသီးခြားစီမိတ်ဆက်ပေးပြီး XML အချက်အလက်များ၏ခွဲခြမ်းစိတ်ဖြာခြင်းစွမ်းရည်များကိုထိရောက်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာကူညီရန်လက်တွေ့ကျကျရေးရာဥပမာများကိုပေးလိမ့်မည်။
XML_Parse သည် PHP တွင် XML parser function တစ်ခုဖြစ်ပြီး Event-based parsing method (SAX parsing ဟုလည်းလူသိများ) ဖြစ်သည်။ XML ဒေတာများကိုဖတ်ရှုခြင်းလုပ်ငန်းစဉ်အတွင်း XML အချက်အလက်များကိုဖတ်ရှုခြင်းလုပ်ငန်းစဉ်အတွင်းတိကျသော callback function ကိုဖြစ်ပေါ်စေသည်။
<?php
$xml_data = <<<XML
<books>
<book>
<title>PHP Programming အလေ့အကျင့်</title>
<author>Zhang San</author>
</book>
<book>
<title>XML နှင့် Web အစေခံ</title>
<author>li si</author>
</book>
</books>
XML;
$parser = xml_parser_create("UTF-8");
function startElement($parser, $name, $attrs) {
echo "Element ကိုစတင်ပါ:$name\n";
}
function endElement($parser, $name) {
echo "Ender:$name\n";
}
function characterData($parser, $data) {
$data = trim($data);
if (!empty($data)) {
echo "အချက်များ:$data\n";
}
}
xml_set_element_handler($parser, "startElement", "endElement");
xml_set_character_data_handler($parser, "characterData");
if (!xml_parse($parser, $xml_data, true)) {
die("XML အမှားခွဲခြမ်းစိတ်ဖြာခြင်း:" . xml_error_string(xml_get_error_code($parser)));
}
xml_parser_free($parser);
?>
Element ကိုစတင်ပါ:BOOKS
Element ကိုစတင်ပါ:BOOK
Element ကိုစတင်ပါ:TITLE
အချက်များ:PHP Programming အလေ့အကျင့်
Ender:TITLE
Element ကိုစတင်ပါ:AUTHOR
အချက်များ:Zhang San
Ender:AUTHOR
Ender:BOOK
Element ကိုစတင်ပါ:BOOK
Element ကိုစတင်ပါ:TITLE
အချက်များ:XML နှင့် Web အစေခံ
Ender:TITLE
Element ကိုစတင်ပါ:AUTHOR
အချက်များ:li si
Ender:AUTHOR
Ender:BOOK
Ender:BOOKS
အားသာချက်များ : မြန်နှုန်း parsing မြန်နှုန်းနှင့်မှတ်ဉာဏ်အသုံးပြုမှုနည်း။
သက်ဆိုင်ရာအခြေအနေများ - ကြီးမားသော XML ဖိုင်များ, XML အကြောင်းအရာများကိုပြုပြင်မွမ်းမံခြင်းမရှိဘဲဖတ်ရန်လိုအပ်သည်။
Domxml သည် XML အချက်အလက်များကို HTML data ကဲ့သို့သော XML data ကဲ့သို့သော XML data ကဲ့သို့ XML data ကဲ့သို့ HTML data ကဲ့သို့ HTML data ကဲ့သို့သော dom data ကဲ့သို့ manipulate လုပ်နိုင်သည်။
မှတ်ချက် ။ ။ PHP5 မှ Domxml ကို Domxml ကို Domxml (I.E. Domdocumps အတန်းအစား) ဖြင့်အစားထိုးခဲ့ပြီးဤဆောင်းပါးသည်နောက်ဥပမာကိုလက်ခံသည်။
<?php
$xml_string = <<<XML
<books>
<book>
<title>PHP Programming အလေ့အကျင့်</title>
<author>Zhang San</author>
<link>https://www.m66.net/book/php</link>
</book>
<book>
<title>XML နှင့် Web အစေခံ</title>
<author>li si</author>
<link>https://www.m66.net/book/xml</link>
</book>
</books>
XML;
$doc = new DOMDocument();
$doc->loadXML($xml_string);
$books = $doc->getElementsByTagName("book");
foreach ($books as $book) {
$title = $book->getElementsByTagName("title")->item(0)->nodeValue;
$author = $book->getElementsByTagName("author")->item(0)->nodeValue;
$link = $book->getElementsByTagName("link")->item(0)->nodeValue;
echo "စာအုပ်ခေါင်းစဉ်:$title\n";
echo "စာရေးသူ:$author\n";
echo "သံကွင်းဆက်:$link\n\n";
}
?>
စာအုပ်ခေါင်းစဉ်:PHP Programming အလေ့အကျင့်
စာရေးသူ:Zhang San
သံကွင်းဆက်:https://www.m66.net/book/php
စာအုပ်ခေါင်းစဉ်:XML နှင့် Web အစေခံ
စာရေးသူ:li si
သံကွင်းဆက်:https://www.m66.net/book/xml
အားသာချက်များ - ရှင်းလင်းသောဖွဲ့စည်းပုံနှင့်လွယ်ကူစွာလည်ပတ်ရန်လွယ်ကူခြင်း, စာဖတ်ခြင်း, ပြုပြင်ခြင်းနှင့်ထုတ်လုပ်ခြင်းနှင့်ထုတ်လုပ်ခြင်းအတွက်သင့်တော်သည်။
သက်ဆိုင်သည့်အခြေအနေများ - အလတ်စား xml ဖိုင်များ, ဖွဲ့စည်းတည်ဆောက်ပုံပြင်ဆင်ခြင်းသို့မဟုတ်စာရွက်စာတမ်းအသစ်များကိုဖန်တီးရန်လိုအပ်သည်။