PHP တွင် XML ဖိုင်များကိုထုတ်ယူသောအခါ parsing အမှားများသည်အထူးသဖြင့်ကြီးမားသော (သို့) မှားယွင်းစွာပြုလုပ်ထားသော XML ဖိုင်များကိုကိုင်တွယ်သောအခါမလွှဲမရှောင်သာဖြစ်သည်။ ကံကောင်းထောက်မစွာပင် PHP သည် developer များအထူးအမှားများ၏တည်နေရာကိုရှာရန်ကူညီရန်အင်္ဂါရပ်အချို့ကိုပေးသည်။ အသုံးများသော function သည် xml_get_current_line_number_number_number ဖြစ်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်ချက်ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာပြီးလက်တွေ့ကျသောဥပမာများနှင့်ပေါင်းစပ်ပြီးရှင်းပြပါမည်။
XML_GEget_current_line_number_number သည် PHP မှ XML parsing function ကိုလက်ရှိ parsed xml document တွင်အမှားအယွင်းတစ်ခုရရှိစေရန်ထောက်ပံ့ပေးသည့် XML parsing function ဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည်များသောအားဖြင့် XML parser နှင့် တွဲဖက်. အသုံးပြုလေ့ရှိသည်။ XML_Parse () ကို အသုံးပြုသောအခါ xml ဖိုင်များကို parsing form များကို parsing arr ည့်သည်များပါ 0 င်ရန်,
int xml_get_current_line_number ( resource $parser )
$ Parser : ဤသည် XML_Parser_Create () ကို သုံး. သင်ဖန်တီးထားသော XML parser ၏အရင်းအမြစ်ဖြစ်သည်။
Reward Value: function သည်လက်ရှိ parsed line နံပါတ် (1 မှ စ. ) ပြန်လည်ရောက်ရှိစေပြီးအမှားမရှိပါက၎င်းသည်ကိန်းဂဏန်းတန်ဖိုးကိုပြန်ပို့သည်။
လက်တွေ့ကျသောအပလီကေးရှင်းများတွင် XML_GEGGET_CURRENT_LINE_Number_Number () ကို ပုံမှန်အားဖြင့် xml_error_string () function ကိုအသုံးပြုလေ့ရှိသည်။ ဤတွင်ပုံမှန်အသုံးပြုမှုဥပမာတစ်ခုဖြစ်သည်။
<?php
// a XML မိစ်ဆာ
$parser = xml_parser_create();
// အမှားကိုင်တွယ် function ကို setting ကို setting
function handleError($parser, $error_code) {
// အမှားအယွင်းများကိုရယူပါ
$error_message = xml_error_string($error_code);
// လက်ရှိအမှားလိုင်းနံပါတ်ရယူပါ
$line_number = xml_get_current_line_number($parser);
echo "အမှားခွဲခြမ်းစိတ်ဖြာခြင်း: {$error_message} အတွက် {$line_number} အိုကေ。\n";
}
// အမှားကိုင်တွယ် function ကိုမှတ်ပုံတင်ပါ
xml_set_element_handler($parser, "startElement", "endElement");
xml_set_character_data_handler($parser, "cdata");
xml_set_error_handler($parser, "handleError");
// သုံးသပ်ကြည့်ရှုခြင်း XML စာချုပ်စာတမ်း
$xml_data = file_get_contents("sample.xml");
if (!xml_parse($parser, $xml_data, true)) {
$error_code = xml_get_error_code($parser);
handleError($parser, $error_code);
} else {
echo "XML စာချုပ်စာတမ်းသုံးသပ်ကြည့်ရှုခြင်း成功!\n";
}
// 释放မိစ်ဆာ
xml_parser_free($parser);
?>
Parser ကိုဖန်တီးပါ ။ XML parser အရင်းအမြစ် parser ကို XML_Parser_Create () ကိုဖန်တီးပါ။
Set Error Handling : XML_set_error_handler မှတဆင့် Custom error function function လက်ကိုင်ကို သတ်မှတ်ပါ။
Parse XML ဒေတာ - XML ဖိုင်ကိုစတင်ခွဲထုတ်ရန် XML_Parse () function ကိုသုံးပါ။ အကယ်. ခွဲခြမ်းစိတ်ဖြာမှုပျက်ကွက်ပါက လက်ကိုင် လုပ်ဆောင်ချက်သည်အစပျိုးခြင်းနှင့်အမှားအယွင်းများထွက်ပေါ်လာလိမ့်မည်။
Capture line နံပါတ် : လက်ကိုင်ပိုင် function တွင် XML_GEGT_CURRENT_LESLE_NASER_NAMBERSAND ကိုခေါ်ဆိုပါ။
XML ဖိုင်တွင်အမှားအယွင်းများရှိပါကကျွန်ုပ်တို့သည်မည်သည့်ဖိုင်ကိုဖြစ်ပေါ်နိုင်သနည်း,
ဖွံ့ဖြိုးရေးစဉ်အတွင်း XML ဖိုင်ခွဲခြမ်းစိတ်ဖြာအမှားအယွင်းများတွင်အခြေအနေအမျိုးမျိုးတွင်ဖြစ်ပွားနိုင်သည်။ ဥပမာအားဖြင့်, dynamically xml ဖိုင်များကိုပြုပြင်သည့်အခါကွင်းဆင်းပြောင်းလဲမှု၏အကြောင်းအရာများသည်မပြည့်စုံသောသို့မဟုတ်တရားမ 0 င်ပါ။ XML_GEget_current_line_number_number () ကိုအသုံးပြုခြင်းသည် XML ဖိုင်တစ်ခုလုံးကိုကိုယ်တိုင်စစ်ဆေးရန်မလိုဘဲအမှားအယွင်းများကိုလျင်မြန်စွာရှာဖွေရန်ကူညီနိုင်သည်။
ခွဲခြမ်းစိတ်ဖြာရန်လိုအပ်သော URL ဒေတာများပါ 0 င်သည့် XML ဖိုင်တစ်ခုရှိသည်ဆိုပါစို့။ မမှန်ကန်သော URL သို့မဟုတ်မမှန်ကန်သော formathing ကြောင့်ခွဲခြမ်းစိတ်ဖြာအမှားများကိုသင်ကြုံတွေ့ရနိုင်သည်။ ဤတွင်အမှားအယွင်းများကိုမည်သို့ဖမ်းယူရန်နှင့်ခွဲခြမ်းစိတ်ဖြာသည့်အခါမည်သို့ကိုင်တွယ်ရမည်ကိုဥပမာတစ်ခုဖြစ်သည်။
<?php
// ပါ 0 င်သည် URL ၏ XML အချက်များ
$xml_data = <<<XML
<items>
<item>
<title>Item 1</title>
<url>http://m66.net/item1</url>
</item>
<item>
<title>Item 2</title>
<url>http://m66.net/item2</url>
</item>
<item>
<title>Item 3</title>
<url>invalid-url</url>
</item>
</items>
XML;
// ဖန်တီး XML မိစ်ဆာ
$parser = xml_parser_create();
// အမှားကိုင်တွယ်ဖြေရှင်းအမှား
function handleError($parser, $error_code) {
$error_message = xml_error_string($error_code);
$line_number = xml_get_current_line_number($parser);
echo "အမှားခွဲခြမ်းစိတ်ဖြာခြင်း: {$error_message} အတွက် {$line_number} အိုကေ。\n";
}
// အမှားကိုင်တွယ် function ကို setting ကို setting
xml_set_error_handler($parser, "handleError");
// 开始သုံးသပ်ကြည့်ရှုခြင်း
if (!xml_parse($parser, $xml_data, true)) {
$error_code = xml_get_error_code($parser);
handleError($parser, $error_code);
} else {
echo "XML စာချုပ်စာတမ်းသုံးသပ်ကြည့်ရှုခြင်း成功!\n";
}
// 释放မိစ်ဆာ
xml_parser_free($parser);
?>
ဤဥပမာတွင် <url> tag တွင် မမှန်ကန်သော URL သည် XML parser အားအမှားတစ်ခုသတင်းပို့ရန်ဖြစ်စေလိမ့်မည်။ XML_GEget_current_line_number_number ()) မှတစ်ဆင့်အမှားအယွင်းနံပါတ်ကိုကျွန်ုပ်တို့အားတိကျစွာရယူနိုင်ရန်အတွက်ကျွန်ုပ်တို့အားပြ the နာကိုနေရာချထားရန်ကူညီနိုင်သည်။
XML_GEget_current_line_number_number_number_number () function ကိုအသုံးပြုခြင်းသည် XML ဖိုင်များကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်အမှားအယွင်းများကိုပိုမိုကောင်းမွန်စွာတိုးတက်စေသည့်အခါတိကျစွာအမှားအယွင်းများကိုတိကျမှန်ကန်စွာရယူနိုင်ရန်ကူညီနိုင်သည်။ ဖွံ့ဖြိုးတိုးတက်စဉ်အတွင်းဤစွမ်းရည်သည်အထူးသဖြင့် XML ဖိုင်ကြီးများနှင့်ကိုင်တွယ်ရာတွင်ပြင်ပအရင်းအမြစ်များမှပြုလုပ်သောအခါ,
PHP တွင် XML parsing အမှားများကို PHP တွင် XML parsing အမှားများကိုဖမ်းယူရန် XML_GET_CURRENT_LIFLE_NUMBERS ကိုမည်သို့အသုံးပြုရမည်ကိုလူတိုင်းနားလည်နိုင်မည်ဟုမျှော်လင့်ပါသည်။ အကယ်. သင်သည်အလားတူပြ problems နာများကြုံတွေ့ရပါကပြ problems နာများကိုပိုမိုလွယ်ကူစွာဖြေရှင်းရန်နှင့်ဖြေရှင်းရန်ကူညီရန်ဤနည်းလမ်းကိုကြိုးစားကြည့်ပါ။