在php中,filter_var()函數會使用指定的過濾器來過濾變量;它可以過濾用戶傳遞來的數據。
php filter_var()函數
filter_var()函數使用指定的過濾器來過濾變量;它可用于驗證和過濾數據。
基本語法
filter_var(var, filtername, options)參數:filter_var()函數接受三個參數
var:表示要過濾的變量,不可省略(必填參數)。filtername:用于指定要使用的過濾器的id或名稱。默認值為filter_default,不會導致過濾;可省略。options:用于指定要使用的一個或多個標志/選項。檢查每個過濾器是否有可能的選項和標志;可省略。返回值:過濾成功,則返回已過濾的數據;過濾失敗,則返回false。
php filter_var()函數的使用示例
示例1:過濾字符串
<?php
$str = hello php er7y6t258u8@%^^%%$$#++!;
$newstr = filter_var($str, filter_sanitize_number_int);
echo $newstr;
?>輸出:
762588++說明:filter_sanitize_number_int表示刪除除了數字和 +-的所有其他字符。
示例2:驗證ip地址
可以使用filter_var()函數來驗證指定的ip地址是否有效。
<?php
header(content-type:text/html;charset=utf-8);
$ip = 127.0.0.1;
if (!filter_var($ip, filter_validate_ip) === false) {
echo($ip 是有效的ip地址);
} else {
echo($ip 不是有效的ip地址);
}
?>輸出:
127.0.0.1 是有效的ip地址示例3:過濾并驗證電子郵件(email)地址
filter_var()函數首先會從包含email地址的變量中刪除所有非法字符,然后檢查它是否是有效的電子郵件地址:
<?php
header(content-type:text/html;charset=utf-8);
$email = xxx@west.cn;
// 從電子郵件中刪除所有非法字符
$email = filter_var($email, filter_sanitize_email);
// 判斷是否為有效的電子郵件
if (!filter_var($email, filter_validate_email) === false) {
echo($email 是一個有效的電子郵件地址);
} else {
echo($email 不是一個有效的電子郵件地址);
}
?>輸出:
xxx@west.cn 是一個有效的電子郵件地址示例4:過濾并驗證url
filter_var()函數首先從url中刪除所有非法字符,然后檢查是否為有效url:
<?php
header(content-type:text/html;charset=utf-8);
$url = https://west.cn;
// 從url中刪除所有非法字符
$url = filter_var($url, filter_sanitize_url);
// 驗證url是否有效
if (!filter_var($url, filter_validate_url) === false) {
echo($url 是一個有效的url);
} else {
echo($url 不是一個有效的url);
}
?>輸出:
https://west.cn 是一個有效的url