PHP ပရိုဂရမ်တွင်အမှားအယွင်းများသည် PHP ပရိုဂရမ်တွင်အထူးသဖြင့်မခန့်မှန်းရခက်သောတန်ဖိုးများကိုကြုံတွေ့ရနိုင်သည်။ ဤအမှားအယွင်းများကိုရှောင်ရှားနိုင်ရန်အတွက်ပရိုဂရမ်၏ပုံမှန်လည်ပတ်မှုကို 0 င်ရောက်စွက်ဖက်ခြင်းမှ 0 င်ရောက်စွက်ဖက်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဒေတာအမျိုးအစားများကိုထိထိရောက်ရောက်ရှာဖွေတွေ့ရှိရန်နှင့် PHP မှပါ 0 င်သော functions _nan နှင့် strval ကိုသုံးနိုင်သည်။
is_nan : ဒီ function ကိုတန်ဖိုး "နံပါတ်မဟုတ်" (နန်) ဆိုတာကိုရှာဖွေတွေ့ရှိဖို့အသုံးပြုသည်။ ကိန်းဂဏန်းဆိုင်ရာတွက်ချက်မှုများတွင် နန် သည်အနံ့မရှိသောသင်္ချာဆိုင်ရာစစ်ဆင်ရေးများတွင်များသောအားဖြင့်ကွဲပြားခြားနားသောသင်္ချာဆိုင်ရာစစ်ဆင်ရေးများတွင်ပုံမှန်မဟုတ်သော Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Non-Mathematical တွက်ချက်မှုများပြုလုပ်သည်။
Strval : ဒီ function ကို variable တစ်ခုအတွက် string တစ်ခုအဖြစ်ပြောင်းလဲရန်အသုံးပြုသည်။ အကယ်. variable သည် string အမျိုးအစားတစ်ခုဖြစ်ပြီးဖြစ်ပါက၎င်းသည်တန်ဖိုးကိုတိုက်ရိုက်ပြန်ပို့လိမ့်မည်။ အကယ်. ၎င်းသည်အခြားအမျိုးအစားများအတွက် variable တစ်ခုဖြစ်ပါက၎င်းသည်၎င်းကို string တစ်ခုအဖြစ်ပြောင်းလဲလိမ့်မည်။
အသုံးပြုသူ input ကိုထုတ်ယူခြင်းသို့မဟုတ်ကိန်းဂဏန်းတွက်ချက်မှုများကိုလုပ်ဆောင်သောအခါမှန်ကန်သောဒေတာအမျိုးအစားကိုသေချာစေရန်လိုအပ်သည့်အခြေအနေများကိုသင်မကြာခဏတွေ့လေ့ရှိသည်။ ဥပမာအားဖြင့်အသုံးပြုသူမှတင်ပြသောပုံစံအချက်အလက်သည် string တစ်ခုဖြစ်နိုင်သည်။ ၎င်းသည်နောက်ထပ်အပြောင်းအလဲအတွက်ဂဏန်းတန်ဖိုးတစ်ခုသို့ပြောင်းလဲရန်လိုအပ်သည်။ သို့သော်ဒေတာတွင်ဂဏန်းမဟုတ်သောစာလုံးများပါ 0 င်ပါကကိန်းဂဏန်းစစ်ဆင်ရေးများကိုတိုက်ရိုက်လုပ်ဆောင်ခြင်းသည် NATERS ၏ တန်ဖိုးကိုတိုက်ရိုက်ဖြစ်စေနိုင်သည်။
ဤပြ problem နာကိုရှောင်ရှားရန်ဒေတာအမျိုးအစား၏မှန်ကန်မှုကိုသေချာစေရန် IS_NAN နှင့် strval ကို ပေါင်းစပ်နိုင်သည်။
ကျွန်ုပ်တို့သည်အသုံးပြုသူထည့်သွင်းတန်ဖိုးကိုပုံစံတစ်ခုမှလက်ခံရရှိပြီးထိုတန်ဖိုးသည်နံပါတ်တစ်ဖြစ်သင့်သည်ဆိုပါစို့။ အချို့ဖြစ်ရပ်များတွင်အသုံးပြုသူသည်ဂဏန်းမဟုတ်သောဇာတ်ကောင်အချို့ကိုရိုက်ကူးနိုင်ပြီးနံပါတ်သို့ကူးပြောင်းသောအခါ ကန္တာရ ကိုပြန်လည်ရောက်ရှိလာနိုင်သည်။
<?php
$user_input = $_POST['user_value'];
// input ကို floating တန်ဖိုးကိုပြောင်းလဲရန်ကြိုးစားပါ
$converted_value = floatval($user_input);
// ပြောင်းလဲခြင်းသည်ဆိုပါက NaN,အသုံးပြု strval ၎င်းကို string တစ်ခုသို့ပြောင်းပြီးချက်ချင်းပေးပါ
if (is_nan($converted_value)) {
echo "အမှား:မမှန်ကန်သော input ကိုတန်ဖိုး,ကျေးဇူးပြု. မှန်ကန်သောနံပါတ်ကိုထည့်ပါ。";
} else {
echo "ပြောင်းလဲတန်ဖိုးကိုဖြစ်ပါတယ်:" . $converted_value;
}
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်သုံးစွဲသူ၏ input ကို floating value သို့ပထမဆုံးပြောင်းလဲသည်။ ထို့နောက်ပြောင်းလဲထားသောတန်ဖိုးသည် နင် ဖြစ်သည်ကိုရှာဖွေရန် IS_NAN ကို သုံးပါ။ သို့ဆိုလျှင်အမှားအယွင်းတစ်ခုမှာအမှားအယွင်းတစ်ခုဖြစ်သည်။ အကယ်. Nan မဟုတ်လျှင်နောက်ဆက်တွဲလုပ်ဆောင်မှုများဆက်လက်ဖြစ်ပွားလိမ့်မည်။
ပြင်ပ API မှဒေတာများကိုရယူသည့်အခါပြန်လာသောအချက်အလက်များသည်ခိုင်လုံသောကိန်းဂဏန်းတန်ဖိုးမဟုတ်ပါ။ ဤကိစ္စတွင်၎င်းသည် နန် ဖြစ်သည်ကိုရှာဖွေတွေ့ရှိရန် IS_NAN ကို သုံးနိုင်သည်။ မမှန်ကန်သောဒေတာများကိုပျက်ဆီးစေခြင်းသို့မဟုတ် output အမှားအယွင်းများကိုရှောင်ရှားရန်မတတ်နိုင်သောအချက်အလက်များကိုသေချာစေရန် strval function ကိုသုံးနိုင်သည်။
<?php
$response = file_get_contents("https://api.gitbox.net/get-value");
$data = json_decode($response, true);
// ပြန်လာသောတန်ဖိုးသည်ဂဏန်းတန်ဖိုးသို့မဟုတ် string ကိုဖြစ်သည်ဟုယူဆပါ
$value = $data['value'];
// ဟုတ်လားစစ်ဆေးပါ NaN
if (is_nan($value)) {
echo "API ပြန်လာတန်ဖိုးမမှန်ကန်ပါ,ကိုင်တွယ်နိုင်ခြင်းမရှိပါ。";
} else {
// ကခိုင်လုံသောနံပါတ်ဖြစ်လျှင်,နောက်ဆက်တွဲစစ်ဆင်ရေးလုပ်ဆောင်ပါ
echo "တရားဝင်တန်ဖိုးကိုဖြစ်ပါတယ်:" . strval($value);
}
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်ပြင်ပ API မှအချက်အလက်များကိုယူပြီး၎င်းကိုခွဲခြမ်းစိတ်ဖြာသည်။ အကယ်. ပြန်လာသော တန်ဖိုးကို Nan . နီကာ မှတစ်ဆင့်အမှားများကိုရှာဖွေပြီးကိုင်တွယ်ဖြေရှင်းနိုင်သည် ။
IS_NAN နှင့် Strval functions များကိုပေါင်းစပ်ခြင်းအားဖြင့် PHP ပရိုဂရမ်မာများသည်အမျိုးအစားအမှားများကြောင့်ဖြစ်ပေါ်သောပြ troubl နာများကိုထိရောက်စွာရှောင်ရှားနိုင်သည်။ is_nan သည် ကျွန်ုပ်တို့အား မမှန်ကန်သောတန်ဖိုးများကိုရှာဖွေတွေ့ရှိရန်နှင့်လုပ်ဆောင်ရန်ကူညီသည်။ အသုံးပြုသူထည့်သွင်းမှုများကိုလုပ်ဆောင်သည်ဖြစ်စေ, သင်္ချာတွက်ချက်မှုများကိုပြုလုပ်သည်သို့မဟုတ်ပြင်ပ APIs များကိုခေါ်ယူခြင်းသည်ကျွန်ုပ်တို့၏ code နှစ်ခုကိုပိုမိုခိုင်မာစေနိုင်သည်။
ရှေ့နှင့်နောက်ပိုင်းအပိုင်းသည်ဆီလျှော်မှုမရှိပါ (အမြီးအပိုင်း, သင်၏ပြ problem နာနှင့်ဘာမှမဆိုင်ပါဘူး)