查詢

filter_input()函式—用法及示例

「 從外部獲取輸入,並對輸入進行過濾 」


函式名:filter_input()

適用版本:PHP 5 >= 5.2.0, PHP 7

用法:filter_input() 函式用於從外部獲取輸入,並對輸入進行過濾。它接受三個引數:輸入型別、輸入的變數名和過濾器型別。該函式返回過濾後的值,如果過濾失敗則返回 false。

示例:

  1. 獲取並過濾 POST 請求中的 username 引數:
$username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING);
  1. 獲取並過濾 GET 請求中的 email 引數,同時校驗 email 格式:
$email = filter_input(INPUT_GET, 'email', FILTER_VALIDATE_EMAIL);
if ($email) {
    // 郵箱格式正確,進行後續操作
} else {
    // 郵箱格式不正確,進行錯誤處理
}
  1. 獲取並過濾 COOKIE 中的 token 引數,同時轉換為整數型別:
$token = filter_input(INPUT_COOKIE, 'token', FILTER_VALIDATE_INT);

注意事項:

  • 輸入型別引數可以是以下常量之一:INPUT_GET、INPUT_POST、INPUT_COOKIE、INPUT_SERVER、INPUT_ENV。
  • 過濾器型別引數可以是以下常量之一:FILTER_SANITIZE_STRING、FILTER_VALIDATE_EMAIL、FILTER_VALIDATE_INT 等,具體可檢視 PHP 官方文件瞭解更多過濾器型別。
  • 透過 filter_input() 函式獲取輸入時,會自動進行過濾和驗證,提高了安全性,避免了一些常見的安全漏洞。
補充糾錯
上一個函式: filter_input_array()函式
下一個函式: filter_id()函式
熱門PHP函式
分享連結