PHP filter_input_array() 函數
PHP filter_input_array() 函數

定義和用法
filter_input_array() 函數從腳本外部獲取多項輸入(比如表單輸入),并進行過濾。
該函數對過濾多個輸入變量很有用,無需重復調用 filter_input()。
該函數可從各種來源獲取輸入:
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_ENV
- INPUT_SERVER
- INPUT_SESSION(尚未推行)
- INPUT_REQUEST(尚未推行)
如果成功,則以數組形式返回被過濾的數據。如果失敗,則返回 FALSE。
語法
filter_input_array(input_type, filter_args)
參數 | 描述 |
---|---|
input_type | 必需。規定輸入類型。參見上面的列表中可能的類型。 |
filter_args | 可選。規定過濾器參數數組。合法的數組鍵名是變量名,合法的值是過濾器 ID,或者規定過濾器、標志以及選項的數組。 該參數也可以是一個單一的過濾器 ID,如果是這樣,輸入數組中的所有值由指定過濾器進行過濾。 過濾器 ID 可以是 ID 名稱(比如 FILTER_VALIDATE_EMAIL)或 ID 號(比如 274)。 |
提示和注釋
提示:參見 完整的 PHP Filter
參考手冊,查看可與該函數一同使用的過濾器。
實例
在本例中,我們使用 filter_input_array() 函數來過濾三個 POST 變量。所接收的 POST 變量是姓名、年齡以及 e-mail 地址:
<?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));
?>
$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
)
(
[name] => Peter
[age] => 41
[email] => peter@example.com
)

相關文章
- PHP 簡介
- PHP 魔術常量
- PHP date() 函數
- PHP 包含文件 include 和 require 語句
- PHP array_combine() 函數
- PHP array_diff_assoc() 函數
- PHP array_merge_recursive() 函數
- PHP array_multisort() 函數
- PHP array_product() 函數
- PHP array_udiff_uassoc() 函數
- PHP array_uintersect_assoc() 函數
- PHP array_uintersect_uassoc() 函數
- PHP array_unshift() 函數
- PHP arsort() 函數
- PHP each() 函數
- PHP extract() 函數
- PHP reset() 函數
- PHP sizeof() 函數
- PHP uksort() 函數
- PHP 5 Math 函數