လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> php is_nan နှင့် json_decode ၏အသုံးပြုမှုအပေါ်မှတ်စုများ

php is_nan နှင့် json_decode ၏အသုံးပြုမှုအပေါ်မှတ်စုများ

gitbox 2025-05-27

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင် is_nan function နှင့် json_decode function သည်အသုံးများသောလုပ်ဆောင်ချက်များဖြစ်သည်။ is_nan function ကိုတန်ဖိုးမရှိတဲ့ကိန်းဂဏန်းမဟုတ်တဲ့ကိန်းဂဏန်း (နန်) ဟာ json_decode function ကို PHP မှာရှိတဲ့ json format နဲ့ပြောင်းဖို့အသုံးပြုနေတုန်းပဲ။ သို့သော်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်အသုံးပြုသောအခါအထူးဂရုပြုရန်လိုအပ်သည့်ပြ issues နာအချို့ရှိသည်။ ဤဆောင်းပါးသည်ဤပြ issues နာများကိုအသေးစိတ်လေ့လာပြီးလက်တွေ့ကျသောဖြေရှင်းနည်းများကိုပေးလိမ့်မည်။

1 ။ is_nan function ကိုမိတ်ဆက်

IS_NAN function သည် PHP တွင်ထည့်သွင်းထားသောတန်ဖိုးတစ်ခုမှာ "Non-Non-Non-Non-Non-Non) ဟုတ်မဟုတ်စစ်ဆေးရန် Built-in function တစ်ခုဖြစ်သည်။ Nan နန်သည် "နံပါတ်မဟုတ်" ကိုရပ်တည်နေသည်။ များသောအားဖြင့်သင်္ချာတွက်ချက်မှုများတွင်တွေ့ရှိရသည်။ အထူးသဖြင့်သင်္ချာတွက်ချက်မှုများတွင်တွေ့ရှိရသည်။

 $val = acos(8); // ဝင်သည်NaN,အကေြာင်းမှာacosfunction ကို၏တန်ဖိုးဖြစ်သင့်သည်-1ရောက်လာ1အကြား
if (is_nan($val)) {
    echo "ဒါNaNအဘိုး";
}

is_nan function ကိုပြန်ရောက်သည့်တန်ဖိုးသည် မှန်ကန် သည်သို့မဟုတ် မှားယွင်းသော အရာ ဖြစ်သည်။ Parameter သည် Nan က နန် ဖြစ်သည်။

2 ။ JSON_DECODE function ကိုမိတ်ဆက်

JSON_DECODEDED function ကို JSOS format ရှိ JSO formating တွင် json format ဖြင့် php ရှိ variable များသို့ပြောင်းလဲရန်အသုံးပြုသည်။ JSON format ကိုအထူးသဖြင့် API တုန့်ပြန်မှုကိုကိုင်တွယ်သည့်အခါ Web Development တွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသည်။

 $json_string = '{"name": "John", "age": 30}';
$obj = json_decode($json_string);
echo $obj->name; // ထုတ်လုပ်ခြင်းJohn

JSON_DECODEDED -UTION သည်ဒုတိယ parameter သည်သတ်မှတ်ထားသောပေါ် မူတည်. အရာဝတ်ထုတစ်ခုသို့မဟုတ်ခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။

3 ။ JSON_DECODED နှင့် Nan ထုတ်လုပ်ခြင်း

JSON တွင် Nan ၌ nan သည် ခိုင်လုံသောတန်ဖိုးမဟုတ်ပါ။ JSON စံသည် string များ, နံပါတ်များ, arrays နှင့် boolean တန်ဖိုးများအပါအ 0 င်အခြေခံအချက်အလက်များကိုထောက်ခံသည်။ သို့သော် Nan နှင့် Infinity တို့ မပါ 0 င်ပါ။ ဒါကြောင့်သင် JSON string ကို nson_decode ထဲရှိ JSON string ကိုအောင်အောင်လုပ်ပါက PHP သည်၎င်းကို Null မှခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။

ဥပမာအားဖြင့်, ကျွန်ုပ်တို့တွင် နန် တန်ဖိုးရှိ JSON string တစ်ခုရှိသည်ဆိုပါစို့။

 $json_string = '{"value": NaN}';
$result = json_decode($json_string);
var_dump($result);

ထုတ်လုပ်မှု -

 NULL

ဘာဖြစ်လို့လဲဆိုတော့ JSOS_Decode က JSOSS မှာ ခွဲနိုင်တဲ့ကိန်းဂဏန်းကိုမဖြေရှင်းနိုင်တဲ့အတွက် Null ကို ပြန်မရလို့ပါ။

4 ။ __nan json_decode နှင့်ပေါင်းစပ်သောအခါအလားအလာရှိသောပြ problems နာများ

JSON_DECode သည် JSON တွင် Nans ဆင်မ်ဆင်တွင်မခွဲနိုင်ပါက JSON အချက်အလက်များကိုလုပ်ဆောင်သည့်အခါအချို့သောတန်ဖိုးကို Nans သည် နန်ကို ရှာဖွေတွေ့ရှိပါကအောက်ပါပြ problems နာများကိုကြုံတွေ့ရနိုင်သည်။

  • နန် သည် JSON တွင်ပါ 0 င်ပါက JSON_DECode သည် ၎င်းကိုလျစ်လျူရှုပြီး NULL ကို ပြန်ပို့သည်။ Rull မဟုတ် သည့် အတွက်တန်ဖိုးကိုစစ်ဆေးရန် IS_NAN ကို ခေါ်ပါ

  • JSOSO နှင့် IS_NAN နှင့်တရားသူကြီးမှ နန် တန်ဖိုးကို သင်ရယူရန်မျှော်လင့် ပါ က ,

နမူနာကုဒ်

 $json_string = '{"value": NaN}';
$data = json_decode($json_string);

if (is_nan($data->value)) {
    echo "Value is NaN";
} else {
    echo "Value is not NaN or is null";
}

output ကိုဖြစ်လိမ့်မည်:

 Value is not NaN or is null

၎င်းသည် Nance တန်ဖိုးကိုစစ်ဆေးရန်မျှော်လင့်ထားသည့်အတိုင်း၎င်းသည်မျှော်လင့်ထားသည့်အပြုအမူမဟုတ်ပါ, သို့သော် JSONS_Decode သည် ၎င်းကိုမခွဲပါ။

5 ။ ဖြေရှင်းနည်း

5.1 ။ null မှ Nan ကိုအစားထိုးပါ

JSON ဒေတာကို နန် ပါ 0 င်သည့်အခါ Nan ကိုစာဖြင့်ရေးသားခြင်းနှင့် JSONS_Decode ပြီးနောက်အချက်အလက်များကိုစစ်ဆေးခြင်းအားဖြင့် Nance ကို မှန်ကန်စွာအစားထိုးနိုင်သည်။ ဥပမာအားဖြင့်, နောက်ဆက်တွဲအပြောင်းအလဲအတွက်ဆုံးဖြတ်ချက်ချရန် string ကို "နန်" သို့မဟုတ်အခြားအမှတ်အသားနှင့်အတူ Nan ကို အစားထိုးနိုင်သည်။

 $json_string = '{"value": "NaN"}';
$data = json_decode($json_string);

if ($data->value === "NaN") {
    echo "Value is NaN";
}

5.2 ။ ပြောင်းလဲတန်ဖိုးကိုစစ်ဆေးပါ

နောက်နည်းတစ်နည်းမှာ JSON_Decode ကို စနစ်တကျ ကိုင်တွယ်ရန်သေချာစေရန် JSONS_Decode ကိုခေါ်ပြီးနောက်သင့်လျော်သောစစ်ဆေးမှုများကိုအသုံးပြုရန်ဖြစ်သည် အကယ်. JSON_DECODED သည် NULL ကို ပြန်လည်ရောက်ရှိပါကမူရင်း JSON ဒေတာတွင် နန် တွင်ပါ 0 င်ပြီးသက်ဆိုင်ရာလုပ်ဆောင်မှုကိုလိုအပ်သလိုသေချာစွာဆုံးဖြတ်နိုင်သည်။

 $json_string = '{"value": NaN}';
$data = json_decode($json_string, false);

if ($data === null && json_last_error() === JSON_ERROR_SYNTAX) {
    echo "JSON contains invalid value like NaN";
}

6 ။ အကျဉ်းချုပ်

PHP ရှိ IS_NAN နှင့် JSONS_Decode ကို အသုံးပြုသောအခါ developer များကအောက်ပါအချက်များကိုဂရုပြုရန်လိုအပ်သည်။

  • JSOR_DECODED သည် JSON တွင် NSONS တွင် Nans ဆင်ဆန်းတွင် parsing Nan တန်ဖိုးများကိုမပံ့ပိုးပါ။

  • JSON ကို Nans ကို ပါ 0 င်သည့်အခါ JSON_Decode သို့ အထူး ဂရုပြုရမည်

  • ပရိုဂရမ်၏မှန်ကန်မှုကို JSON ဒေတာများကိုကြိုတင်မသုံးခြင်းသို့မဟုတ်ခွဲခြမ်းစိတ်ဖြာပြီးနောက်အထူးတန်ဖိုးများကိုကိုယ်တိုင်ပြုပြင်နိုင်သည်။

ဤသိကောင်းစရာများနှင့်နည်းလမ်းများမှတစ်ဆင့် PHP တွင် is_nan နှင့် json_decode ကို အသုံးပြုသောအခါအလားအလာရှိသောပြ problems နာများကိုပိုမိုထိရောက်စွာကိုင်တွယ်နိုင်သည်။