首頁 >後端開發 >php教程 >PHP中filter_var() 函數和Filter 函數的分析

PHP中filter_var() 函數和Filter 函數的分析

不言
不言原創
2018-06-21 13:54:011391瀏覽

這篇文章主要介紹了關於PHP中filter_var() 函數和Filter 函數的分析,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

PHP 過濾器用於對來自非安全來源的資料(例如使用者輸入)進行驗證和過濾

filter_var() 函數透過指定的篩選器過濾變數。
如果成功,則傳回已過濾的數據,如果失敗,則傳回 false。
語法
filter_var(variable, filter, options)variable:必要。規定要過濾的變數。
filter:可選。規定要使用的過濾器的 ID。 (請參閱下面的FiltersID清單)
options:規定包含標誌/選項的陣列。檢查每個過濾器可能的標誌和選項。 

<? 
@header(&#39;content-type:text/html;charset=utf-8;&#39;); 
$email_a=&#39;jcifox@gmail.com&#39;; 
$email_b=&#39;@jcifox@gmail.com&#39;; 
$email_c=&#39;jcifoxgmail.com&#39;; 
$ip_a=&#39;0.0.0.0&#39;; 
$ip_b=&#39;255.255.255.255&#39;; 
$ip_c=&#39;0.0.0.265&#39;; 
echo $email_a.&#39; : &#39;; 
echo (filter_var($email_a,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $email_b.&#39; : &#39;; 
echo (filter_var($email_b,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $email_c.&#39; : &#39;; 
echo (filter_var($email_c,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_a.&#39; : &#39;; 
echo (filter_var($ip_a,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_b.&#39; : &#39;; 
echo (filter_var($ip_b,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_c.&#39; : &#39;; 
echo (filter_var($ip_c,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
?>

FiltersID名稱:描述
FILTER_CALLBACK:呼叫使用者自訂函數來過濾資料。
FILTER_SANITIZE_STRING:移除標籤,移除或編碼特殊字元。
FILTER_SANITIZE_STRIPPED:"string" 過濾器的別名。
FILTER_SANITIZE_ENCODED:URL-encode 字串,去除或編碼特殊字元。
FILTER_SANITIZE_SPECIAL_CHARS:HTML 轉義字符'"a8093152e673feb7aba1828c43532094& 以及ASCII 值小於32 的字符。
FILTER_SANITIZE_EMAIL:刪除所有字符,除了字母、數字以及!#$%&'* -/=?^ _`{|}~@.[]
FILTER_SANITIZE_URL:刪除所有字符,除了字母、數字以及$-_. !*'(),{}|\\^~[]`a8093152e673feb7aba1828c43532094#% ";/?:@&=
FILTER_SANITIZE_NUMBER_INT:刪除所有字符,除了數字和-
FILTER_SANITIZE_NUMBER_FLOAT:刪除所有字符,除了數字、 - 以及.,eE。
FILTER_SANITIZE_MAGIC_QUOTES:應用 addslashes()。
FILTER_UNSAFE_RAW:不進行任何過濾,去除或編碼特殊字元。
FILTER_VALIDATE_INT:在指定的範圍以整數驗證值。
FILTER_VALIDATE_BOOLEAN:如果是"1", "true", "on" 以及"yes",則傳回true,如果是"0", "false", "off", "no" 和"",則傳回false。否則返回 NULL。
FILTER_VALIDATE_FLOAT:以浮點數驗證值。
FILTER_VALIDATE_REGEXP:根據 regexp,相容 Perl 的正規表示式來驗證值。
FILTER_VALIDATE_URL:把值當作 URL 來驗證。
FILTER_VALIDATE_EMAIL:把值當作 e-mail 來驗證。
FILTER_VALIDATE_IP:把值當作 IP 位址來驗證。

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

關於php中urlencode()URL編碼函數的解析

關於php_pdo 預處理語句的解析

#

以上是PHP中filter_var() 函數和Filter 函數的分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn