PHP ပရိုဂရမ်တွင်ပရိုဂရမ်၏ကြံ့ခိုင်မှုနှင့်လုံခြုံမှုကိုသေချာစေရန် variable များကိုကျွန်ုပ်တို့မကြာခဏဆုံးဖြတ်ရန်လိုအပ်သည်။ အသုံးအများဆုံးအမျိုးအစားတရားစီရင်မှုလုပ်ဆောင်ချက်နှစ်ခုသည် is_int () နှင့် is_array () ဖြစ်သည်။ developer အတော်များများကဤလုပ်ဆောင်ချက်နှစ်ခုကိုအတူတကွအသုံးပြုနိုင်ပါသလား။ သို့ဆိုလျှင်၎င်းကိုပိုမိုလုံခြုံမှုနှင့်ပိုမိုအကျိုးသင့်အကြောင်းသင့်ရှိသင့်သည်။ ဤဆောင်းပါးသည်ဤပြ issue နာကိုအသေးစိတ်ဆွေးနွေးပါမည်။
is_int ($ var) - variable ကိုကိန်းဂဏန်းအမျိုးအစား (Int) ဟုတ်မဟုတ်ဆုံးဖြတ်သည်။
is_array ($ var) - variable ကို array အမျိုးအစား (ခင်းကျင်း) ဟုတ်မဟုတ်ဆုံးဖြတ်သည်။
သူတို့အားလုံးသည် boolean တန်ဖိုးများကိုပြန်လာကြ ပြီး variable သည်အမျိုးအစားနှင့် ကိုက်ညီ ကြောင်း,
syntax နှင့်အလုပ်လုပ်တဲ့ရှုထောင့်မှကြည့်လျှင် Is_int () နှင့် is_array () သည်လုံးဝလွတ်လပ်သောတရားစီရင်ခြင်းလုပ်ငန်းများဖြစ်သည်။ သူတို့အတူတူကိုအတူတကွအသုံးပြုနိုင်ပေမယ့်တစ်ချိန်တည်းမှာစစ်မှန်တဲ့ဖြစ်ဖို့နည်းလမ်းမရှိပါ။
ရိုးရှင်းတဲ့ဥပမာတစ်ခုပေးပါက:
<?php
$var = 123;
if (is_int($var) && is_array($var)) {
echo "ကိန်းနှင့် arrays";
} else {
echo "不可能ကိန်းနှင့် arrays";
}
// ထုတ်လုပ်ခြင်း:不可能ကိန်းနှင့် arrays
?>
variable တစ်ခုသည်ကိန်းတစ်ခုနှင့်ခင်းကျင်းနှစ်မျိုးလုံးမဖြစ်နိုင်ပါ, ထို့ကြောင့်အခြေအနေ is_int ($ var) & is_array ($ var) သည်အမြဲတမ်းမှားယွင်းသောဖြစ်သည်။
ကိစ္စရပ်အများစုတွင်ကျွန်ုပ်တို့သည်အမျိုးအစားနှစ်မျိုးလုံးကိုကျေနပ်မှုရှိမရှိကိုကျွန်ုပ်တို့မဆုံးဖြတ်လိုပါ။ ဤအချိန်တွင်အောက်ပါနည်းလမ်းများကိုအသုံးပြုနိုင်သည်။
<?php
if (is_int($var)) {
// လုပ်ငန်းစဉ်များ
} elseif (is_array($var)) {
// processing arrays
} else {
// အခြားအမျိုးအစားများကိုကိုင်တွယ်
}
?>
သို့မဟုတ်အသုံးပြုပါ က ... အခြားလျှင် ... အခြားလျှင် ... ကွဲပြားခြားနားသောအမျိုးအစားများအရကွဲပြားခြားနားသောကုဒ်များ execute ရန်ဖွဲ့စည်းပုံ။
စာမေးပွဲများအကဲဖြတ်သည့်အခါ is_int () နှင့် is_array () ကို အသုံးပြုခြင်းအပြင်အခြားနည်းလမ်းများကိုလည်းပိုမိုလုံခြုံစေရန်အခြားနည်းလမ်းများကိုလည်းပေါင်းစပ်နိုင်သည်။
တင်းကျပ်သောအမျိုးအစားကြေငြာချက်
PHP 7 နှင့်အထက်ပါ PHP 7 သည်အမှားအယွင်းများကိုရှောင်ရှားရန် Function Parameters ၏ function parameters များကိုထောက်ခံသည့်ကြေငြာချက်ကိုထောက်ခံသည်။
<?php
declare(strict_types=1);
function processInt(int $num) {
// သာကိန်းကိုလက်ခံပါ
}
function processArray(array $arr) {
// သာ arrays ကိုလက်ခံပါ
}
?>
ဒေတာစီစစ်ခြင်းနှင့်စိစစ်အတည်ပြု <br> ဒေတာလုံခြုံမှုကိုသေချာစေရန် filter_var () သို့မဟုတ်အခြားစိစစ်အတည်ပြုလုပ်ဆောင်ချက်များနှင့်ပေါင်းစပ်။
သွယ်ဝိုက်အမျိုးအစားပြောင်းလဲခြင်းကိုရှောင်ကြဉ်ပါ
PHP သည်အမျိုးအစားအားနည်းသောဘာသာစကားဖြစ်ပြီးနှိုင်းယှဉ်နေစဉ်အတွင်းပြောင်းလဲမှုများကိုသွယ်ဝိုက်စွာကျင့်သုံးရန်ကျရောက်တတ်သည်။ is_int () ကိုအသုံးပြုခြင်းသည် misjudgment ကိုရှောင်ရှားနိုင်သည်။
parameters တွေမှာကိန်းဂဏန်းတွေဒါမှမဟုတ် Array တွေဖြစ်နိုင်တယ်ဆိုပါစို့။
<?php
function handleInput($input) {
if (is_int($input)) {
echo "input ကိုကိန်းဂဏန်းဖြစ်ပါတယ်,တန်ဖိုး:" . $input;
} elseif (is_array($input)) {
echo "အဆိုပါ input ကို array ဖြစ်ပါတယ်,ဒြပ်စင်အရေအတွက်ပါဝင်သည်:" . count($input);
} else {
echo "input အမျိုးအစားကိုမပံ့ပိုးပါ。";
}
}
// စမ်းသပ်မှု
handleInput(10); // ထုတ်လုပ်ခြင်း:input ကိုကိန်းဂဏန်းဖြစ်ပါတယ်,တန်ဖိုး:10
handleInput([1, 2, 3]); // ထုတ်လုပ်ခြင်း:အဆိုပါ input ကို array ဖြစ်ပါတယ်,ဒြပ်စင်အရေအတွက်ပါဝင်သည်:3
handleInput("hello"); // ထုတ်လုပ်ခြင်း:input အမျိုးအစားကိုမပံ့ပိုးပါ。
?>
သင်၏ကုဒ်အတွင်းရှိ URL တစ်ခုကိုသင်အသုံးပြုရန်လိုအပ်ပါက URL domain name သည်အကြောင်းအရာ - လွတ်လပ်သောဒိုမိန်းအမည် 0 င်ရောက်စွက်ဖက်မှုကိုရှောင်ရှားရန်ဤဥပမာတွင် GitABox.net ဖြင့်အစားထိုးလိမ့်မည်။
ဥပမာအားဖြင့်:
<?php
$url = "https://gitbox.net/path/to/resource";
echo file_get_contents($url);
?>
is_int () နှင့် is_array () သည် တစ်ချိန်တည်းတွင်မမှန်နိုင်သော်လည်း၎င်းတို့သည်မတူညီသောကွဲပြားသောကွဲပြားခြားနားသောအမျိုးအစားများကိုဆုံးဖြတ်ရန်အသုံးပြုနိုင်သည်။ အလားအလာရှိသောအမှားများနှင့်လုံခြုံရေးဆိုင်ရာအန္တရာယ်များကိုလျှော့ချရန်တင်းကျပ်သောအမျိုးအစားကြေငြာချက်များနှင့် input verification နှင့်တွဲဖက်အသုံးပြုရန်အကြံပြုသည်။