اعتبار سنجی داده های ورودی در PHP - تابع ( ) filter_input_array
تابع اعتبار سنج ( ) filter_input_array :
تابع ( ) filter_input_array ، چندین ( آرایه ای از ) مقادیر ورودی به صفحه را دریافت
کرده و بر مبنای معیار مورد نظر اعتبار سنجی می کند .
برای مثال داده های ورودی می تواند مقادیر وارد شده در کادر های متن در یک فرم وب ،
یک کوکی و یا مقادیری باشد که توسط یک متد GET یا POST به صفحه ارسال شده است .
فرق تابع ( ) filter_input_array با تابع ( ) filter_input در این است که تابع ( )
filter_input_array می تواند چندین متغیر را همزمان و بدون نیاز به تکرار دستوری ،
اعتبار سنجی نماید ، حال آنکه تابع ( ) filter_input ، فقط می تواند یک مقدار ورودی
را اعتبار سنجی نماید .
خروجی این تابع ، به صورت آرایه ای از جواب های True یا False خواهد بود .
شکل کلی استفاده از این تابع به صورت زیر است :
|
Syntax
|
filter_input_array ( input_type , filter args )
|
|
توضیح
|
این پارامتر تعیین کننده نوع منبع داداهایی است که به صفحه وارد شده و می خواهیم مقدار
آنها را با فیلتر مورد نظرمان اعتبار سنجی نماییم . برای مثال این پارامتر می
تواند مقدار وارد شده در یک کادر متن در یک فرم وب و یا یک کوکی یا مقداری باشد که
توسط یک متد GET به صفحه ارسال شده است .
انواع داده های ورودی ممکن عبارتند از :
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_SERVER
- INPUT_ENV
استفاده از این پارامتر اجباری است .
|
این پارامتر تعیین کننده نام یا ID یکی از فیلتر های پیش ساخته اعتبار سنج PHP
است که بر مبنای آن داده ورودی اعتبار سنجی می شود . مقدار پیش فرض برای این پارامتر
FILTER_SANITIZE_STRING است . برای دریافت اطلاعات کامل راجع به انواع فیلتر های پیش
ساخته PHP به صفحه مرجع فیلتر های اعتبار سنج
در PHP بروید .
استفاده از این پارامتر اختیاری است .
|
با ارایه یک مثال ، موارد بالا را در عمل نمایش داده ایم .
مثال : در مثال زیر تابع ( ) filter_input_array را برای اعتبار
سنجی 3 مقدار ورودی که توسط یک متد POST به صفحه وارد شده اند ، استفاده کرده ایم .
مقادیر ورودی یک name ، age و یک e-mail addres هستند.
|
مثال
|
< ? 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 ) );
?>
|
|
خروجی
|
Array
(
[name] => Peter
[age] => 41
[email] => peter@example.com
)
|
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه :