ฟังก์ชัน filter_input() ของ PHP
การกำหนดและการใช้งาน
ฟังก์ชัน filter_input() รับค่าเข้ามาจากภายนอกสคริปต์และทำการกรอง
ฟังก์ชันนี้ใช้เพื่อเช็คความเชื่อถือของตัวแปรที่มาจากแหล่งที่ไม่ปลอดภัย ตัวอย่างเช่น การใส่ข้อมูลจากผู้ใช้
ฟังก์ชันนี้สามารถรับค่าเข้ามาจากแหล่งที่มาหลากหลาย:
- INPUT_GET
- INPUT_POST
- INPUT_COOKIE
- INPUT_ENV
- INPUT_SERVER
- INPUT_SERVER
- INPUT_SESSION (ยังไม่ได้ทำการประกาศ)
INPUT_REQUEST (ยังไม่ได้ทำการประกาศ) กำหนดตัวแปรที่ต้องการกรอง ถ้าประสบความสำเร็จ จะกลับค่าข้อมูลที่ถูกกรอง ถ้าล้มเหลว จะกลับค่า false หรือ
ถ้าไม่มีการตั้งค่าตัวแปร จะกลับค่า NULL
การใช้งานสำคัญfilter_input( กำหนดตัวแปรที่ต้องการกรองfilter_input( กำหนด ID ของตัวกรองที่ต้องการใช้ โดยเริ่มต้นค่าเป็น FILTER_SANITIZE_STRINGfilter_input( options)
, | กำหนดชนิดของข้อมูลที่เข้ามา ดูรายการที่มีอยู่ด้านบน |
---|---|
สำคัญ | variable |
กำหนดตัวแปรที่ต้องการกรอง | filter |
กำหนด ID ของตัวกรองที่ต้องการใช้ โดยเริ่มต้นค่าเป็น FILTER_SANITIZE_STRING |
ตัวเลือก โปรดดูคู่มืออ้างอิง PHP Filter ฟังก์ชันเพื่อได้รับตัวกรองที่เป็นไปได้ ID ของตัวกรองสามารถเป็นชื่อ ID (เช่น FILTER_VALIDATE_EMAIL) หรือหมายเลข ID (เช่น 274) |
options | กำหนดตัวแปรแบบแถวเพื่อประกาศเครื่องมือ/ตัวเลือก ตรวจสอบแบบภาพที่เป็นไปได้ของแต่ละตัวกรอง |
ตัวอย่าง
ในตัวอย่างนี้ เราใช้ฟังก์ชัน filter_input() เพื่อกรองตัวแปร POST ตัวที่รับมาเป็นที่ยอมรับคือที่อยู่อีเมลที่ถูกต้อง
<?php if (!filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL)) { echo "E-Mail ไม่ถูกต้อง"; } else { echo "E-Mail นี้ถูกต้อง"; } ?>
ออกแบบเหมือนนี้:
E-Mail นี้ถูกต้อง