函式名:filter_var_array()
適用版本:PHP 5 >= 5.2.0, PHP 7
用法:filter_var_array() 函式透過指定的過濾器對陣列中的每個元素進行過濾。它接受兩個引數:待過濾的陣列和過濾器規則陣列。過濾器規則陣列包含了要應用於陣列元素的過濾器和選項。
語法:filter_var_array(array $data, array $definition, bool $add_empty = true)
引數:
- $data:待過濾的陣列。
- $definition:過濾器規則陣列,定義了要應用於陣列元素的過濾器和選項。
- $add_empty(可選):指定是否將空字串視為有效值,預設為 true。
返回值:返回一個陣列,其中包含了經過過濾的陣列元素。
示例:
$data = array(
'name' => 'John Doe',
'age' => '25',
'email' => '[email protected]'
);
$filters = array(
'name' => FILTER_SANITIZE_STRING,
'age' => array(
'filter' => FILTER_VALIDATE_INT,
'options' => array(
'min_range' => 1,
'max_range' => 100
)
),
'email' => FILTER_VALIDATE_EMAIL
);
$result = filter_var_array($data, $filters);
// 輸出過濾後的結果
var_dump($result);
輸出:
array(3) {
["name"]=>
string(8) "John Doe"
["age"]=>
int(25)
["email"]=>
string(17) "[email protected]"
}
在上面的示例中,我們定義了一個包含姓名、年齡和電子郵件的陣列。然後,我們定義了一個過濾器規則陣列,其中包含了對應的過濾器和選項。最後,我們使用 filter_var_array() 函式對陣列進行過濾,並將過濾後的結果儲存在 $result 變數中。最後使用 var_dump() 函式輸出過濾後的結果。