PHP filter_input_array() 函數(shù)
定義和用法
filter_input_array() 函數(shù)從腳本外部獲取多項輸入,并進行過濾。
本函數(shù)無需重復(fù)調(diào)用 filter_input(),對過濾多個輸入變量很有用。
本函數(shù)可從各種來源獲取輸入:
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_ENV
- INPUT_SERVER
- INPUT_SESSION (Not yet implemented)
- INPUT_REQUEST (Not yet implemented)
如果成功,則返回被過濾的數(shù)據(jù),如果失敗,則返回 false。
語法
filter_input(input_type, args)
參數(shù) | 描述 |
---|---|
input_type | 必需。規(guī)定輸入類型。參見上面的列表中可能的類型。 |
args |
可選。規(guī)定過濾器參數(shù)數(shù)組。 合法的數(shù)組鍵是變量名。合法的值是過濾器 ID,或者規(guī)定過濾器、標志以及選項的數(shù)組。 該參數(shù)也可以是一個單獨的過濾器 ID,如果是這樣,輸入數(shù)組中的所有值由指定過濾器進行過濾。 |
提示和注釋
提示:參見完整的 PHP Filter 參考手冊,查看可與該函數(shù)一同使用的過濾器。
例子
在本例中,我們使用 filter_input_array() 函數(shù)來過濾三個 POST 變量。所接受的 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)
);
?>
輸出類似:
Array ( [name] => Peter [age] => 41 [email] => peter@example.com )