PHP တွင် XML ဖိုင်များကို parsing XML ဖိုင်များသည်အဓိကအားဖြင့် 2 လမ်းများပေါ်တွင်မူတည်သည်။ XMLreader နှင့် XMlParser ။ ဤတွင်ကျွန်ုပ်တို့သည်အဓိကဖြစ်ရပ်များ -based XML parsing method အတွက်သင့်တော်သော XmlParser အပေါ် အခြေခံ. parsing နည်းလမ်းကိုအဓိကဆွေးနွေးကြသည်။ XML_Parse () သို့မဟုတ် xml_parse_into_struct () ကိုအသုံးပြုသောအခါ XML ဖိုင်များကိုခွဲခြမ်းစိတ်ဖြာရန် PHP သည်သက်ဆိုင်ရာ parsing ရလဒ်သို့မဟုတ်အမှားအယွင်းများကိုပြန်ပို့လိမ့်မည်။ ဖိုင်တွင်အမှားတစ်ခုရှိပါကခွဲခြမ်းစိတ်ဖြာမှုများကိုကြိုတင်သတ်မှတ်ထားလိမ့်မည်။
သို့သော် XML ဖိုင်များသည်ဖွဲ့စည်းပုံတွင်အလွန်ကြီးမားသည်သို့မဟုတ်ရှုပ်ထွေးသောအခါပြ problems နာများသည်ခွဲခြမ်းစိတ်ဖြာစဉ်အတွင်းပေါ်ပေါက်လာလေ့ရှိသည်။ ဤအချိန်တွင် developer များဤအမှားများကိုဖမ်းရန်ကိရိယာများပိုမိုအသုံးပြုရန်လိုအပ်သည်။
xml_parse () function ကို parsing အတွက်အသုံးပြုသောအခါအမှားတစ်ခုကြုံတွေ့ရပါက PHP သည် XML_Get_errorer_Error_code () ကိုအလိုအလျောက်ခေါ်ဆိုလိမ့်မည်။ ဤလုပ်ဆောင်ချက်သည်အမှားအမျိုးအစားကိုကိုယ်စားပြုသောကိန်းဂဏန်းကိုပြန်ပို့သည်။ ဤလုပ်ဆောင်မှုမှတစ်ဆင့်ဤလုပ်ဆောင်မှုမှတစ်ဆင့်အမှား၏တိကျသောအကြောင်းရင်းကိုသင်လျင်မြန်စွာနားလည်နိုင်သည်။
<?php
// နမူနာ:သုံးသပ်ကြည့်ရှုခြင်း XML ဖိုင်နှင့်အမှားကုဒ်ရယူပါ
$xml = '<?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>';
$parser = xml_parser_create();
// 开始သုံးသပ်ကြည့်ရှုခြင်း
if (!xml_parse($parser, $xml)) {
// Get နှင့် output ကို error ကုဒ်
echo "Error code: " . xml_get_error_code($parser);
// Get နှင့် output error message
echo "Error message: " . xml_error_string(xml_get_error_code($parser));
}
// 关闭သုံးသပ်ကြည့်ရှုခြင်း器
xml_parser_free($parser);
?>
အထက်ဖော်ပြပါကုဒ်ပါကရိုးရှင်းသော XML string ကိုမည်သို့ခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်အမှားများမအောင်မြင်သည့်အခါအမှားကုဒ်များနှင့်အမှားများကို XML_GEget_error_code () မှတစ်ဆင့်ထုတ်ယူရမည်ကိုပြသသည်။
XML_GEget_error_code () တွင်အမှားကုဒ် () သည်ကွဲပြားခြားနားသောခွဲခြမ်းစိတ်ဖြာအမှားများကိုကိုယ်စားပြုသည်။ ဘုံအမှားကုဒ်များမှာအောက်ပါအတိုင်းဖြစ်သည် -
XML_ERRORO_NONE : အမှားအယွင်းမရှိပါ
XML_ERRORR_NO_MEMORY - မှတ်ဥာဏ်မလုံလောက်ပါ
XML_ERROROR_SSYNTAX : Syntax အမှား
XML_ERROR_INVALID_TAKE_TOKE : မမှန်ကန်သောတိုကင်
XML_ERROROR_unclated_token : unclosed tag
XML_ERROROR_TAG_MISTATCH : TAG MISSTACH
XML_ERROROR_DUAPLICE_ATTRATE_ATTREARY : Duplicate attribute တွေ
developer များကအမှားအယွင်းများကုဒ်နှင့်သက်ဆိုင်ရာအမှားအချက်အလက်များအပေါ် အခြေခံ. အမှားအနေအထားကိုလျင်မြန်စွာရှာဖွေနိုင်သည်။ ဥပမာအားဖြင့်, XML_ERROROR_SSSSYNTAX အမှားတစ်ခုဖြစ်လာပါကပုံမှန်အားဖြင့် XML format သည်မမှန်ကန်ပါ။
ကျွန်ုပ်တို့တွင်မမှန်မကန် tags များသို့မဟုတ်ဂုဏ်သတ္တိများရှိသည့် XML ဖိုင်ကြီးတစ်ခုရှိသည်ဆိုပါစို့။ ကျွန်ုပ်တို့သည်ခွဲခြမ်းစိတ်ဖြာခြင်းအမှားများကိုကြုံတွေ့ရပါက,
XML ဖိုင်ဖွဲ့စည်းပုံကိုစစ်ဆေးပါ XML ဖိုင်ရှိ tags များအားလုံးကိုမှန်ကန်စွာပိတ်ထားပြီးစာလုံးပေါင်းအမှားများကိုအခမဲ့ဖြစ်သည်ကိုသေချာအောင်လုပ်ပါ။ XML ဖွဲ့စည်းပုံသည်စံနှုန်းများနှင့်ကိုက်ညီမှုရှိမရှိလျင်မြန်စွာစစ်ဆေးရန် XML စိစစ်အတည်ပြုကိရိယာများသို့မဟုတ်အွန်လိုင်း xml စိစစ်အတည်ပြုဝန်ဆောင်မှုများကိုသုံးပါ ။
အမှား output ကိုထည့်ပါ parsing စဉ်အတွင်း output ကိုအသေးစိတ်အချက်အလက်များအရသတင်းအချက်အလက်များကိုဥပမာ -
<?php
if (!xml_parse($parser, $xml)) {
echo "XML Error: " . xml_error_string(xml_get_error_code($parser)) . "\n";
echo "At line " . xml_get_current_line_number($parser) . "\n";
}
၎င်းသည် developer များမှားယွင်းသောနေရာကိုရှာရန်ကူညီနိုင်သည်။
တဖြည်းဖြည်းဖိုင်ကိုခွဲခြမ်းစိတ်ဖြာ <br> <br> အလွန်ကြီးမားသော XML ဖိုင်များအတွက်သင်သည် funks များရှိဖိုင်များကိုခွဲခြမ်းစိတ်ဖြာရန်ကြိုးစားနိုင်သည်။
ကြီးမားသော XML ဖိုင်များကိုခွဲခြမ်းစိတ်ဖြာသောအခါအမှားများကိုကြုံတွေ့ရရန်မလွှဲမရှောင်သာဖြစ်သည်။ PHP ၏ XML_GEget_ERRORRE_ERRORR_ERGRORE_ERGRORERRORE_ERRORR_ERGRORERROREER_ERGOURORERRORERROREER_ERRORERRORERRORERRORER_ERGORRORRORERRORERRORERRORE အမှားကုဒ်များနှင့်ဆက်စပ်သောအမှားများကိုလေ့လာခြင်းအားဖြင့် developer များသည်ပြ problems နာများကိုပိုမိုထိရောက်စွာဖြေရှင်းနိုင်ပြီး XML ဖိုင်များကိုချောချောမွေ့မွေ့နိုင်အောင်ပြုလုပ်နိုင်သည်။ ထို့အပြင်အချို့သောပြင်ပကိရိယာများနှင့်အွန်လိုင်းအတည်ပြုချက် 0 န်ဆောင်မှုများကိုပေါင်းစပ်ခြင်းသည်အလားအလာရှိသော format များကိုဖိုင်များတွင်ရှာဖွေရန်ပိုမိုလွယ်ကူစေသည်။
PHP ၏ Error Code ယန္တရားကိုလျင်မြန်စွာရှာဖွေရန်နှင့်ဖွံ့ဖြိုးမှုစွမ်းရည်ကိုပိုမိုကောင်းမွန်စေရန်နှင့်ဖွံ့ဖြိုးမှုစွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေရန်နှင့်ဖွံ့ဖြိုးမှုစွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်ပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးသည်သင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။