سبد (0)

فیلتر FILTER_VALIDATE_INT

 فیلتر FILTER_VALIDATE_INT 

PHP Filter Reference PHP Filter Reference

مثال

بررسی می کند که آیا متغیر int$ یک عدد صحیح است یا نه:

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
    echo("Variable is an integer");
} else {
    echo("Variable is not an integer");
}
?>
Run example »

تعریف و کاربرد

از تابع FILTER_VALIDATE_INT برای اعتبار سنجی مقدار یک عدد صحیح(integer) استفاده می شود. 

فیلتر FILTER_VALIDATE_INT همچنین به ما اجازه می دهد تا برای متغیر عدد صحیح مورد نظر، یک برد(range) تعریف کنیم.

optionها و flag های امکان پذیر:

  • min_range  - کمترین برد عدد صحیح را مشخص می کند. 
  • max_range  - بیشترین برد عدد صحیح را مشخص می کند. 
  • FILTER_FLAG_ALLOW_OCTAL - اجازه ی وارد کردن اعداد اکتال را به ما می دهد. 
  • FILTER_FLAG_ALLOW_HEX - اجازه ی وارد کردن اعداد هگزادسیمال را به ما می دهد. 

نکته: هنگام مشخص کردن option ها در یک آرایه. option ها باید در یک آرایه ی چند بعدی انجمنی قرار بگیرند به طوری که نام آن برابر با "options" باشد. 


مثال های بیشتر

ایجاد مشکل با 0 و FILTER_VALIDATE_INT - در مثال بالای صفحه، اگر 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) === false) {
    echo("Variable is an integer");
} else {
    echo("Variable is not an integer");
}
?>
Run example »

مثال 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");
}
?>
Run example »

PHP Filter Reference PHP Filter Reference

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه