PHP တွင် JSON ဖတ်ရှုစဉ် Parser အမှားများ
json_last_error function ကို အသုံးပြု၍
JSON ဖတ်ရှုစဉ် အမှန်တကယ်ဖြစ်ပွားခဲ့သော အမှားကို
ရှာဖွေသိရှိနိုင်သည်။
ဤသို့ပြုလုပ်ပုံကို ကြည့်ရှုကြပါစို့။
မှားယွင်းနေသော JSON တစ်ခုရှိသည်ဟု ယူဆပါစို့။
<?php
$json = '["a", "b", "c",]';
?>
၎င်းကို ဖတ်ရှုရန် ကြိုးစားကြည့်ကြပါစို့။
<?php
$data = json_decode($json);
var_dump($data); // null ကိုထုတ်ပေးမည်
?>
အမှားတစ်ခု ဖြစ်ပွားသောကြောင့် json_last_error
ကိုခေါ်ယူသောအခါ ထိုအမှား၏နံပါတ်ကို ထုတ်ပေးမည်။
<?php
$error = json_last_error();
var_dump($error); // အမှား၏နံပါတ်
?>
ပြန်လည်ပေးသော နံပါတ်ကို PHP ၏ အထူး constants များနှင့် နှိုင်းယှဉ်နိုင်သည်။ ၎င်းအပေါ်အခြေခံ၍ အမျိုးမျိုးသော အမှားအမျိုးအစားများကို ဖမ်းယူသော ကုဒ်ကို ရေးသားနိုင်သည်။
<?php
switch (json_last_error()) {
case JSON_ERROR_NONE:
echo 'အမှားမရှိပါ';
break;
case JSON_ERROR_DEPTH:
echo 'စတက်အနက်အများဆုံးကို ရောက်ရှိသွားသည်';
break;
case JSON_ERROR_STATE_MISMATCH:
echo 'မမှန်ကန်သော bits သို့မဟုတ် မုဒ်မကိုက်ညီမှု';
break;
case JSON_ERROR_CTRL_CHAR:
echo 'မမှန်ကန်သော ထိန်းချုပ်မှုအက္ခရာ';
break;
case JSON_ERROR_SYNTAX:
echo 'ဝါကျဖွဲ့စည်းပုံအမှား၊ မမှန်ကန်သော JSON';
break;
case JSON_ERROR_UTF8:
echo 'မမှန်ကန်သော UTF-8 အက္ခရာများ၊ encoding မှားနိုင်သည်';
break;
default:
echo 'မသိအမှား';
break;
}
?>
JSON အချို့ပါဝင်သော string တစ်ခုပေးထားသည်။ ၎င်းကို PHP ၏ data structure သို့ ဖတ်ရှုပါ။ ဖတ်ရှုမှု၏ရလဒ်ကို သို့မဟုတ် JSON ကိုဖတ်ရှု၍မရပါက အမှား၏အကြောင်းရင်းကို ထုတ်ပြပါ။