最新的Web開發教程
 

PHP filter_input_array() Function

<PHP過濾器參考

檢查外部變量"email"發送到PHP頁面,通過"get"方法,並檢查它是否是一個有效的電子郵件地址:

<?php
if (!filter_input(INPUT_GET, "email" , FILTER_VALIDATE_EMAIL)) {
    echo("Email is not valid");
} else {
    echo("Email is valid");
}
?>
運行示例»

定義和用法

所述filter_input_array()函數獲得外部變量(eg from form input)以及任選的過濾它們。

該功能是用於檢索/過濾許多值,而不是調用有用filter_input()許多次。


句法

filter_input_array( type, definition, add_empty )
參數 描述
type 需要。 輸入型檢查。 可以是下列之一:
  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_SERVER
  • INPUT_ENV
definition 可選的。 指定的過濾器參數的陣列。 一個有效的數組鍵是變量名,和一個有效的值是過濾器的名稱或ID,或陣列指定過濾器,標誌和選項。 這個參數也可以是一個單一的過濾器的名稱/ ID; 然後將輸入陣列中的所有值都通過指定的過濾器過濾
add_empty 可選的。 一個布爾值。 當設置為TRUE其添加丟失的鑰匙為NULL的返回值。 默認值是true

技術細節

返回值:

返回包含關於成功的變量的值的陣列,或失敗FALSE

PHP版本: 5.2.0+

在這個例子中,我們使用filter_input_array()函數來過濾三種樁變量。 接收到的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));
?>

代碼的輸出應該是:

Array
  (
  [name] => Peter
  [age] => 41
  [email] => [email protected]
  )

<完整PHP過濾器參考