လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> XML အချက်အလက်များကို XML_Parse နှင့် Domxml function library မှတဆင့်မည်သို့ခွဲခြမ်းစိတ်ဖြာနည်း

XML အချက်အလက်များကို XML_Parse နှင့် Domxml function library မှတဆင့်မည်သို့ခွဲခြမ်းစိတ်ဖြာနည်း

M66 2025-05-12

မျက်မှောက်ခေတ်ဝက်ဘ်လျှောက်လွှာဖွံ့ဖြိုးတိုးတက်မှုတွင် XML (adultible markup language) သည်ဒေတာဖလှယ်ရေးပုံစံများထဲမှတစ်ခုဖြစ်ပြီးအခြေအနေများစွာတွင်ကျယ်ပြန့်စွာအသုံးပြုနေဆဲဖြစ်သည်။ PHP သည် XML အတွက်လုပ်ဆောင်ချက်များအတွက် function libraries အမျိုးမျိုးကိုထောက်ပံ့ပေးသည် ဤဆောင်းပါးသည်ဤနည်းစနစ်နှစ်ခုကိုသီးခြားစီမိတ်ဆက်ပေးပြီး XML အချက်အလက်များ၏ခွဲခြမ်းစိတ်ဖြာခြင်းစွမ်းရည်များကိုထိရောက်စွာကျွမ်းကျင်စွာကျွမ်းကျင်စွာကူညီရန်လက်တွေ့ကျကျရေးရာဥပမာများကိုပေးလိမ့်မည်။

1 ။ ဖြစ်ရပ် -based parsing အတွက် XML_PARSESSE ကို အသုံးပြုပါ

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 အကြောင်းအရာများကိုပြုပြင်မွမ်းမံခြင်းမရှိဘဲဖတ်ရန်လိုအပ်သည်။

2 ။ Domxml ကို Document Object Model (DOM) အပေါ် အခြေခံ. ခွဲခြမ်းစိတ်ဖြာခြင်းကိုပြုလုပ်ရန် Domxml ကို သုံးပါ။

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 ဖိုင်များ, ဖွဲ့စည်းတည်ဆောက်ပုံပြင်ဆင်ခြင်းသို့မဟုတ်စာရွက်စာတမ်းအသစ်များကိုဖန်တီးရန်လိုအပ်သည်။