در این مقاله میخوانید
آموزش FILTER_VALIDATE_INT در PHP
شرح کاربرد FILTER_VALIDATE_INT در PHP
فیلتر یک مقدار عدد صحیح/Integer را اعتبارسنجی می کند. همچنین این امکان را می دهد تا یک بازه ی برای حداقل و حداکثر مقدار عدد صحیح ورودی مشخص نمایید.
Option (پارامتر) و flag های ممکن به شرح زیر می باشند:
- min_range – حداقل بازه ی مقدار عدد صحیح را مشخص می کند.
- max_range – حداکثر یا سقف بازه ی مقدار عدد صحیح را مشخص می کند.
- FILTER_FLAG_ALLOW_OCTAL – امکان پذیرش اعداد مبنای 8 نیز را فراهم می کند.
- FILTER_FLAG_ALLOW_HEX – امکان پذیرش اعداد مبنای 16 را نیز فراهم می کند.
بررسی می کند آیا متغیر $int حاوی مقدار معتبر integer یا عدد صحیح می باشد یا خیر:
< ?php
$int = 100;
if (filter_var($int, FILTER_VALIDATE_INT)) {
echo("Variable is an integer");
} else {
echo("Variable is not an integer");
}
خروجی:
Variable is an integer
به هنگام تعیین مقادیر options در آرایه، لازم است آرایه یک آرایه ی تودرتو (multidementioanl) متناظر (اسم-مقدار) باشد و اسم المان آن options تنظیم شود.
FILTER_VALIDATE_INT در PHP و مشکل مقدار 0 – در مثال بالا، چنانچه مقدار پارامتر $int بر روی 0 تنظیم شده باشد، تابع بالا رشته ی "Variable is not an integer" را به عنوان خروجی برمی گرداند. برای حل این مشکل، کد زیر را بکار ببرید.
کد لازم برای اعتبارسنجی و درنظر گرفتن مقدار 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");
}
? >
خروجی:
Variable is an integerمثال کاربردی 2
تابع FILTER_VALIDATE_INT در PHP بررسی می کند آیا متغیر ورودی از نوع 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");
}
? >
خروجی:
Variable value is within the legal range