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(input_type, args)
参数 | 描述 |
---|---|
input_type | 必需。 |
args |
เลือกได้. กำหนดตัวแปรตัวกรอง ตัวแปรที่สามารถใช้ได้นั้นคือชื่อตัวแปร และค่าที่สามารถใช้ได้คือตัวเลข ID ตัวกรอง หรือตัวแปรที่กำหนดตัวกรอง สัญญาณ และตัวเลือก ตัวแปรนี้ก็สามารถเป็นได้เพียงตัวเลข ID ตัวกรองเดียว หากเป็นนั้น ทุกค่าในตัวแปรนี้จะถูกกรองโดยตัวกรองที่กำหนด |
คำแนะนำ และหมายเหตุ
คำแนะนำ:ดูคู่มืออ้างอิง PHP Filter ทั้งหมดดูข้อมูลเกี่ยวกับตัวแปรกรองที่สามารถใช้กับฟังก์ชันนี้ด้วย:
ตัวอย่าง
ในตัวอย่างนี้ เราใช้ฟังก์ชัน filter_input_array() ในการกรองสามตัวแปร 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 )