آرایه ورودی فیلتر (filter_input_array)
تابع filter_input_array چند «متغیر (Variable)» بیرونی را با هم می گیرد و فیلتر می کند. مثل برگه های امتحان که همه را یک جا چک می کنیم.
تعریف و کاربرد
filter_input_array() متغیرهای خارجی مثل فرم ها را می خواند و در صورت نیاز، اعتبارسنجی می کند. وقتی چند مقدار داری، به جای چند بار filter_input() از این استفاده کن.
سینتکس و پارامترها
filter_input_array(type, definition, add_empty)
- type: منبع ورودی؛ یکی از
INPUT_GET|POST|COOKIE|SERVER|ENV. - definition: آرایه تنظیم فیلترها یا یک فیلتر واحد.
- add_empty: اگر TRUE باشد، کلیدهای گم شده را
NULLمی کند.
مثال: فیلتر سه ورودی POST
<?php
$filters = array(
"name" => array(
"filter" => FILTER_CALLBACK,
"flags" => FILTER_FORCE_ARRAY,
"options" => "ucwords"
),
"age" => array(
"filter" => FILTER_VALIDATE_INT,
"options" => array(
"min_range" => 1,
"max_range" => 120
)
),
"email" => FILTER_VALIDATE_EMAIL
);
print_r(filter_input_array(INPUT_POST, $filters));
?>
رفتار بازگشتی
در موفقیت، آرایه ای از مقادیر برمی گردد. در شکست، FALSE برمی گردد. از PHP 5.2+ در دسترس است. پارامتر add_empty از PHP 5.4 اضافه شد.
گام های عملی سریع
- نوع منبع را تعیین کن؛ مثلا
INPUT_POST. - آرایه
definitionرا با فیلترها بساز. - تابع را صدا بزن و خروجی را بررسی کن.
نکته: اگر فقط یک فیلتر بدهی، همه مقادیر با همان فیلتر بررسی می شوند.
پیوندهای مفید
- مرجع فیلتر PHP برای دیدن همه ثابت ها و فیلترها.
- ورودی فیلتر (filter_input) برای تک متغیرها.
- W3Schools: filter_input_array() مرجع اصلی این مثال.
- W3Schools: PHP Filter Reference فهرست کامل فیلترها.
جمع بندی سریع
- برای چند ورودی، سریع و مرتب است.
definitionرفتار هر فیلتر را تعیین می کند.add_emptyکلیدهای جاافتاده راNULLمی کند.- خروجی موفق، آرایه مقادیر معتبر است.