ตัวกรองPHP FILTER_VALIDATE_INT
ตัวอย่าง
ตรวจสอบว่าตัวแปร $int เป็นจำนวนเต็มหรือไม่:
<?php
$int = 100;
if (filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
?>
ความหมายและการใช้งาน
ตัวกรอง FILTER_VALIDATE_INT ใช้เพื่อตรวจสอบค่าเป็นจำนวนเต็ม
FILTER_VALIDATE_INT ยังอนุญาตให้เราระบุช่วงสำหรับตัวแปรจำนวนเต็ม
ตัวเลือกและธงที่เป็นไปได้:
- min_range - ระบุค่าจำนวนเต็มต่ำสุด
- max_range - ระบุค่าจำนวนเต็มสูงสุด
- FILTER_FLAG_ALLOW_OCTAL - อนุญาตค่าเลขฐานแปด
- FILTER_FLAG_ALLOW_HEX - อนุญาตค่าเลขฐานสิบหก
หมายเหตุ:เมื่อระบุตัวเลือกในอาร์เรย์ ตัวเลือกต้องอยู่ในอาร์เรย์หลายมิติที่เชื่อมโยงกันโดยใช้ชื่อ "ตัวเลือก"
ตัวอย่างเพิ่มเติม
FILTER_VALIDATE_INT และ Problem With 0 - ในตัวอย่างข้างต้น ถ้า $int ถูกตั้งค่าเป็น 0 ฟังก์ชันด้านบนจะคืนค่า "Variable is not an integer" เพื่อแก้ปัญหานี้ ใช้รหัสด้านล่าง:
ตัวอย่าง 1
แก้ไขรหัสเพื่อตรวจสอบ 0 เป็นจำนวนเต็ม:
<?php
$int = 0;
if (filter_var($int, FILTER_VALIDATE_INT) === 0 || filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
?>
ตัวอย่าง 2
ตรวจสอบว่าตัวแปรเป็นทั้งประเภท INT และระหว่าง 1 ถึง 200:
<?php
$int = 122;
$min = 1;
$max = 200;
if (filter_var($int, FILTER_VALIDATE_INT, array("options" => array("min_range"=>$min, "max_range"=>$max))) === false) {
echo("Variable value is not within the legal range");
} else {
echo("Variable value is within the legal range");
}
?>
❮ การอ้างอิงตัวกรอง PHP