最新的Web開發教程
 

PHP 5過濾功能


PHP過濾器介紹

這個PHP過濾器是用來驗證和過濾數據從非安全來源的,如用戶輸入。


安裝

由於PHP 5.2.0中,過濾功能默認情況下啟用。 有沒有使用這些功能需要安裝。


運行時配置

這些函數的行為受php.ini的設置:

名稱 描述 默認 多變
filter.default 過濾所有的$ _GET,$ _ POST,$ _ COOKIE,$ _REQUEST和$ _ SERVER數據通過這個過濾器。 接受你喜歡默認使用過濾器的名稱。 見過濾器列表過濾器名稱列表 “unsafe_raw” PHP_INI_PERDIR
filter.default_flags 當過濾器的默認設置默認標誌申請。 這是為了向後兼容的原因設置為FILTER_FLAG_NO_ENCODE_QUOTES默認 空值 PHP_INI_PERDIR

PHP 5過濾功能

功能 描述
filter_has_var() 檢查是否存在指定的輸入類型的變量
filter_id() 返回指定過濾器名稱的過濾器ID
filter_input() 獲取外部變量(eg from form input)以及任選的過濾器它
filter_input_array() 獲取外部變量(eg from form input)以及任選的過濾他們
filter_list() 返回所有支持的過濾器的列表
filter_var_array() 獲取多個變量,並將其篩選
filter_var() 過濾出該變量與指定的過濾器

PHP 5預定義過濾器常量

不變 ID 描述
FILTER_VALIDATE_BOOLEAN 258 驗證一個布爾
FILTER_VALIDATE_EMAIL 274 驗證電子郵件地址
FILTER_VALIDATE_FLOAT 259 驗證一個浮動
FILTER_VALIDATE_INT 257 驗證一個整數
FILTER_VALIDATE_IP 275 驗證IP地址
FILTER_VALIDATE_REGEXP 272 驗證正則表達式
FILTER_VALIDATE_URL 273 驗證網址
FILTER_SANITIZE_EMAIL 517 刪除所有非法字符從E-mail地址
FILTER_SANITIZE_ENCODED 514 刪除/特殊字符進行編碼
FILTER_SANITIZE_MAGIC_QUOTES 521 應用addslashes()
FILTER_SANITIZE_NUMBER_FLOAT 520 刪除所有字符,除了數字,+ - 和可選,EE
FILTER_SANITIZE_NUMBER_INT 519 除了刪除數字和+所有字符 -
FILTER_SANITIZE_SPECIAL_CHARS 515 刪除特殊字符
FILTER_SANITIZE_FULL_SPECIAL_CHARS
FILTER_SANITIZE_STRING 513 刪除標籤/特殊字符從字符串
FILTER_SANITIZE_STRIPPED 513 FILTER_SANITIZE_STRING的別名
FILTER_SANITIZE_URL 518 去除的URL的所有非法字符
FILTER_UNSAFE_RAW 516 什麼都不做,可選帶/編碼的特殊字符
FILTER_CALLBACK 1024 調用用戶定義的函數來過濾數據