PHP filter_var() 函數(shù) Filter 函數(shù)
更新時間:2012年04月25日 18:59:23 作者:
PHP 過濾器用于對來自非安全來源的數(shù)據(jù)(比如用戶輸入)進(jìn)行驗(yàn)證和過濾
filter_var() 函數(shù)通過指定的過濾器過濾變量。
如果成功,則返回已過濾的數(shù)據(jù),如果失敗,則返回 false。
語法
filter_var(variable, filter, options)variable:必需。規(guī)定要過濾的變量。
filter:可選。規(guī)定要使用的過濾器的 ID。 (參見下面的FiltersID列表)
options:規(guī)定包含標(biāo)志/選項(xiàng)的數(shù)組。檢查每個過濾器可能的標(biāo)志和選項(xiàng)。
<?
@header('content-type:text/html;charset=utf-8;');
$email_a='jcifox@gmail.com';
$email_b='@jcifox@gmail.com';
$email_c='jcifoxgmail.com';
$ip_a='0.0.0.0';
$ip_b='255.255.255.255';
$ip_c='0.0.0.265';
echo $email_a.' : ';
echo (filter_var($email_a,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $email_b.' : ';
echo (filter_var($email_b,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $email_c.' : ';
echo (filter_var($email_c,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_a.' : ';
echo (filter_var($ip_a,FILTER_VALIDATE_IP))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_b.' : ';
echo (filter_var($ip_b,FILTER_VALIDATE_IP))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_c.' : ';
echo (filter_var($ip_c,FILTER_VALIDATE_IP))?'is valid':'is not valid';
?>
FiltersID名稱:描述
FILTER_CALLBACK:調(diào)用用戶自定義函數(shù)來過濾數(shù)據(jù)。
FILTER_SANITIZE_STRING:去除標(biāo)簽,去除或編碼特殊字符。
FILTER_SANITIZE_STRIPPED:"string" 過濾器的別名。
FILTER_SANITIZE_ENCODED:URL-encode 字符串,去除或編碼特殊字符。
FILTER_SANITIZE_SPECIAL_CHARS:HTML 轉(zhuǎn)義字符 '"<>& 以及 ASCII 值小于 32 的字符。
FILTER_SANITIZE_EMAIL:刪除所有字符,除了字母、數(shù)字以及 !#$%&'*+-/=?^_`{|}~@.[]
FILTER_SANITIZE_URL:刪除所有字符,除了字母、數(shù)字以及 $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=
FILTER_SANITIZE_NUMBER_INT:刪除所有字符,除了數(shù)字和 +-
FILTER_SANITIZE_NUMBER_FLOAT:刪除所有字符,除了數(shù)字、+- 以及 .,eE。
FILTER_SANITIZE_MAGIC_QUOTES:應(yīng)用 addslashes()。
FILTER_UNSAFE_RAW:不進(jìn)行任何過濾,去除或編碼特殊字符。
FILTER_VALIDATE_INT:在指定的范圍以整數(shù)驗(yàn)證值。
FILTER_VALIDATE_BOOLEAN:如果是 "1", "true", "on" 以及 "yes",則返回 true,如果是 "0", "false", "off", "no" 以及 "",則返回 false。否則返回 NULL。
FILTER_VALIDATE_FLOAT:以浮點(diǎn)數(shù)驗(yàn)證值。
FILTER_VALIDATE_REGEXP:根據(jù) regexp,兼容 Perl 的正則表達(dá)式來驗(yàn)證值。
FILTER_VALIDATE_URL:把值作為 URL 來驗(yàn)證。
FILTER_VALIDATE_EMAIL:把值作為 e-mail 來驗(yàn)證。
FILTER_VALIDATE_IP:把值作為 IP 地址來驗(yàn)證。
如果成功,則返回已過濾的數(shù)據(jù),如果失敗,則返回 false。
語法
filter_var(variable, filter, options)variable:必需。規(guī)定要過濾的變量。
filter:可選。規(guī)定要使用的過濾器的 ID。 (參見下面的FiltersID列表)
options:規(guī)定包含標(biāo)志/選項(xiàng)的數(shù)組。檢查每個過濾器可能的標(biāo)志和選項(xiàng)。
復(fù)制代碼 代碼如下:
<?
@header('content-type:text/html;charset=utf-8;');
$email_a='jcifox@gmail.com';
$email_b='@jcifox@gmail.com';
$email_c='jcifoxgmail.com';
$ip_a='0.0.0.0';
$ip_b='255.255.255.255';
$ip_c='0.0.0.265';
echo $email_a.' : ';
echo (filter_var($email_a,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $email_b.' : ';
echo (filter_var($email_b,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $email_c.' : ';
echo (filter_var($email_c,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_a.' : ';
echo (filter_var($ip_a,FILTER_VALIDATE_IP))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_b.' : ';
echo (filter_var($ip_b,FILTER_VALIDATE_IP))?'is valid':'is not valid';
echo '<br /><br />';
echo $ip_c.' : ';
echo (filter_var($ip_c,FILTER_VALIDATE_IP))?'is valid':'is not valid';
?>
FiltersID名稱:描述
FILTER_CALLBACK:調(diào)用用戶自定義函數(shù)來過濾數(shù)據(jù)。
FILTER_SANITIZE_STRING:去除標(biāo)簽,去除或編碼特殊字符。
FILTER_SANITIZE_STRIPPED:"string" 過濾器的別名。
FILTER_SANITIZE_ENCODED:URL-encode 字符串,去除或編碼特殊字符。
FILTER_SANITIZE_SPECIAL_CHARS:HTML 轉(zhuǎn)義字符 '"<>& 以及 ASCII 值小于 32 的字符。
FILTER_SANITIZE_EMAIL:刪除所有字符,除了字母、數(shù)字以及 !#$%&'*+-/=?^_`{|}~@.[]
FILTER_SANITIZE_URL:刪除所有字符,除了字母、數(shù)字以及 $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=
FILTER_SANITIZE_NUMBER_INT:刪除所有字符,除了數(shù)字和 +-
FILTER_SANITIZE_NUMBER_FLOAT:刪除所有字符,除了數(shù)字、+- 以及 .,eE。
FILTER_SANITIZE_MAGIC_QUOTES:應(yīng)用 addslashes()。
FILTER_UNSAFE_RAW:不進(jìn)行任何過濾,去除或編碼特殊字符。
FILTER_VALIDATE_INT:在指定的范圍以整數(shù)驗(yàn)證值。
FILTER_VALIDATE_BOOLEAN:如果是 "1", "true", "on" 以及 "yes",則返回 true,如果是 "0", "false", "off", "no" 以及 "",則返回 false。否則返回 NULL。
FILTER_VALIDATE_FLOAT:以浮點(diǎn)數(shù)驗(yàn)證值。
FILTER_VALIDATE_REGEXP:根據(jù) regexp,兼容 Perl 的正則表達(dá)式來驗(yàn)證值。
FILTER_VALIDATE_URL:把值作為 URL 來驗(yàn)證。
FILTER_VALIDATE_EMAIL:把值作為 e-mail 來驗(yàn)證。
FILTER_VALIDATE_IP:把值作為 IP 地址來驗(yàn)證。
您可能感興趣的文章:
- 布隆過濾器(bloom filter)及php和redis實(shí)現(xiàn)布隆過濾器的方法
- PHP Filter過濾器全面解析
- PHP內(nèi)置過濾器FILTER使用實(shí)例
- php使用filter過濾器驗(yàn)證郵箱 ipv6地址 url驗(yàn)證
- php使用filter_var函數(shù)判斷郵箱,url,ip格式示例
- PHP中filter函數(shù)校驗(yàn)數(shù)據(jù)的方法詳解
- php中filter_input函數(shù)用法分析
- php中使用array_filter()函數(shù)過濾空數(shù)組的實(shí)現(xiàn)代碼
- php中filter函數(shù)驗(yàn)證、過濾用戶輸入的數(shù)據(jù)
- 巧用php中的array_filter()函數(shù)去掉多維空值的代碼分享
- PHP過濾器 filter_has_var() 函數(shù)用法實(shí)例分析
- PHP filter_var() 函數(shù)
相關(guān)文章
php array_push()數(shù)組函數(shù):將一個或多個單元壓入數(shù)組的末尾(入棧)
函數(shù)array_push():將一個或多個單元壓入數(shù)組的末尾(入棧)2011-07-07
BS結(jié)構(gòu)中使用PHP訪問ORACLE LOB
這篇文章主要介紹了BS結(jié)構(gòu)中使用PHP訪問ORACLE LOB2006-10-10
PHP函數(shù)之日期時間函數(shù)date()使用詳解
date()函數(shù)是我們在php開發(fā)中常碰到并且會使用到的一個日期函數(shù),下面我來給大家介紹date()函數(shù)的一些基本扮靚和方法,有需要了解的朋友可進(jìn)入?yún)⒖?/div> 2013-09-09最新評論

