PHP ပရိုဂရမ် တွင် တန်ဖိုးသည်ကိန်း တစ်ခုဖြစ် ခြင်း, is_int () သည် built-in function တစ်ခုဖြစ်ပြီး variable တစ်ခုသည် type integer ( int ) ၏တန်ဖိုးကိုဆုံးဖြတ်သည်။ function ကိုယ်နှိုက်ကရိုးရှင်းပေမယ့်,
ဤဆောင်းပါးသည်ဘုံနားလည်မှုများနှင့်လက်တွေ့ကျသောဥပမာများအပါအ 0 င်ကိန်းဂဏန်းများကိုတရားစီရင်ခြင်းနှင့်လက်တွေ့ကျသောဥပမာများအပါအ 0 င် is_int () ကို မည်သို့မှန်ကန်စွာအသုံးပြုရမည်ကိုနက်ရှိုင်းစွာရှင်းပြပါမည်။
is_int(mixed $value): bool
ဤလုပ်ဆောင်ချက်သည် parameter တစ်ခုအနေဖြင့် variable တစ်ခုအဖြစ်ယူပြီး variable သည်ကိန်းဂဏန်းများ (int) သည် ကိန်းဂဏန်းများ ဖြစ်သည်ဆိုပါကပြန်လည်ထူထောင်သည် ။
ဥပမာ -
$value = 10;
if (is_int($value)) {
echo "ဒါဟာကိန်းတစ်ခုပါ";
} else {
echo "不ဒါဟာကိန်းတစ်ခုပါ";
}
ထုတ်လုပ်မှု -
ဒါဟာကိန်းတစ်ခုပါ
လက်တွေ့ကျသောအပလီကေးရှင်းများတွင်ကျွန်ုပ်တို့သည် fonteach ကိုဖြတ်သန်းရန် ပြင်ဆင်မှုများကို မကြာခဏသုံးလေ့ရှိသည်။ ဤအချိန်တွင် Integer စီရင်ချက်များကိုခင်းကျင်း၏သော့များတွင်ပြုလုပ်နိုင်သည်။ ပုံမှန်အခြေအနေများတွင်ရောနှောထားသောခင်းကျင်းမှုများသို့မဟုတ်အညွှန်းကိန်းခင်းကျင်းမှုမှအညွှန်းရေးရာများကိုခွဲခြားရန်ဖြစ်သည်။
$data = [
0 => 'ပန်းသီး',
1 => 'ငှက်ပျောသီး',
'a' => 'လိမ္မော်သီး',
'2' => 'သစ်တော်သီး'
];
foreach ($data as $key => $value) {
if (is_int($key)) {
echo "$key ဒါဟာကိန်းတစ်ခုပါ索引:$value\n";
} else {
echo "$key ဟုတ်ကဲ့, non-integer အညွှန်းကိန်း:$value\n";
}
}
ထုတ်လုပ်မှု -
0 ဒါဟာကိန်းတစ်ခုပါ索引:ပန်းသီး
1 ဒါဟာကိန်းတစ်ခုပါ索引:ငှက်ပျောသီး
a ဟုတ်ကဲ့, non-integer အညွှန်းကိန်း:လိမ္မော်သီး
2 ဟုတ်ကဲ့, non-integer အညွှန်းကိန်း:သစ်တော်သီး
မှတ်ချက်။ ။ သော့ချက် '2' သည်ကိန်းတစ်ခုနှင့်တူသော်လည်း၎င်းသည် string type အမျိုးအစားတစ်ခုဖြစ်ပြီး IS_INT () မှ ကိန်းဂဏန်းအဖြစ်သတ်မှတ်ခြင်းမပြုရ။ ဤသည် is_int () ကို အသုံးပြုသောအခါသော့ချက်ဖြစ်ပါတယ်။
အကယ်. သင် string ကိုဖွဲ့စည်းထားသောနံပါတ်များကိုဆုံးဖြတ်လိုလျှင် ( 2 ' ) ကိုကိန်းဂဏန်းများအနေဖြင့်လည်းဆုံးဖြတ်လိုပါက CNSPE_DIGIT () သို့မဟုတ် is_numeric () သို့မဟုတ် is_numeric () is_numeric () ကို intval ()) ကိုသုံးသင့်သည်။
$key = '2';
if (is_numeric($key) && (string)(int)$key === (string)$key) {
echo "$key တစ်ခုကိန်းစဉ်းစားနိုင်ပါတယ်";
}
ဒါပေမယ့် variable ဟာတင်းကျပ်တဲ့ကိန်းတန်ဖိုးရှိမရှိကိုသင်ဆုံးဖြတ်ချင်ရင် is_int () ဟာအသင့်တော်ဆုံးနှင့်လုံခြုံမှုအရှိဆုံးဖြစ်သည်။
ကွင်းဆက် ကိုယ်နှိုက်သည် Integer Indexes ကိုမကြာခဏမှီခိုသော်လည်း, ကွင်းဆက်၏အပြုအမူကိုဆုံးဖြတ်ရန်ဒေတာများအပေါ်ဆုံးဖြတ်ချက်များကိုတရားစီရင်ရန်လိုအပ်သည်။
$limit = $_GET['limit'] ?? 10;
if (!is_int($limit)) {
$limit = (int)$limit; // ဖြစ်ရပ်များ
}
for ($i = 0; $i < $limit; $i++) {
echo "1 ။ $i ဒုတိယကွင်းဆက်\n";
}
အကယ်. သင်သည် $ ကန့်သတ်ချက်ကို ပုံစံသို့မဟုတ် URL parameters များကိုဖြတ်သန်းသွားပါက default သည် string type ဖြစ်သည်။ IS_INT () ကို တိုက်ရိုက်အသုံးပြုခြင်းသည်တရားစီရင်ခြင်းပျက်ကွက်လိမ့်မည်, သို့မှသာ ,
$limit = $_GET['limit'] ?? 10;
if (filter_var($limit, FILTER_VALIDATE_INT) !== false) {
$limit = (int)$limit;
} else {
$limit = 10;
}
ဤနည်းလမ်းသည်အသုံးပြုသူ input ကိုအတည်ပြုရန်ပိုမိုလုံခြုံပြီးပိုမိုသင့်လျော်သည်။
ဥပမာ,
https://gitbox.net/index.php?limit=5
ကွင်းဆက်ကို 5 ကြိမ်ကွပ်မျက်ခံရလိမ့်မည်။
is_int () အမျိုးအစား Int ၏ တန်ဖိုးများအတွက်သာစစ်မှန်တဲ့ပြန်ပြီး '5' ကို ပြန်ပို့ခြင်းစသည့် string နံပါတ်များကိုပြန်ပို့သည်။
array key တစ်ခုရှိမရှိတရားစီရင် သောအခါ သတိထားပါ။ သတိထားပါ။
အသုံးပြုသူ input သည်များသောအားဖြင့် string type အမျိုးအစားတစ်ခုဖြစ်သည်။ Type_var () သို့မဟုတ်လက်စွဲဘာသာပြောင်းခြင်းကိုအသုံးပြုရန်အကြံပြုသည်။
အကယ်. သင်သည်ကိန်းတစ်ခုနှင့်တူသော string တစ်ခုကိုသင်ဆုံးဖြတ်လိုပါက CNSPE_DIGIT () သို့မဟုတ်အခြားရွေးချယ်စရာများကိုလည်းသုံးနိုင်သည်။
Loop ဖွဲ့စည်းပုံတွင် is_int () ကို အသုံးပြုခြင်းသည်ဘုံအမျိုးအစားဘေးကင်းရေးစစ်ဆေးမှုနည်းလမ်းတစ်ခုဖြစ်သည်။