English | 简体中文 | 繁體中文
查询

filter_var()函数—用法及示例

「 过滤一个变量,使用指定的过滤器 」


函数名:filter_var()

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

用法:filter_var() 函数用于过滤一个变量,使用指定的过滤器。

语法:filter_var(variable, filter, options)

参数:

  • variable:需要过滤的变量。
  • filter:指定的过滤器类型。可以是以下之一:
    • FILTER_VALIDATE_BOOLEAN:验证布尔值。
    • FILTER_VALIDATE_EMAIL:验证电子邮件地址。
    • FILTER_VALIDATE_FLOAT:验证浮点数。
    • FILTER_VALIDATE_INT:验证整数。
    • FILTER_VALIDATE_IP:验证IP地址。
    • FILTER_VALIDATE_REGEXP:根据正则表达式验证值。
    • FILTER_VALIDATE_URL:验证URL。
    • FILTER_SANITIZE_EMAIL:删除所有非法字符,验证电子邮件地址。
    • FILTER_SANITIZE_ENCODED:URL-encode字符串,删除所有非法字符。
    • FILTER_SANITIZE_NUMBER_FLOAT:删除除数字、加号和减号之外的所有字符。
    • FILTER_SANITIZE_NUMBER_INT:删除除数字和加号之外的所有字符。
    • FILTER_SANITIZE_SPECIAL_CHARS:HTML特殊字符转换为HTML实体。
    • FILTER_SANITIZE_STRING:删除标签,HTML特殊字符转换为HTML实体。
    • FILTER_SANITIZE_URL:删除所有非法字符,验证URL。
  • options:可选参数,可以是一个数组或一个掩码。对于某些过滤器,可以使用额外的选项。

返回值:如果过滤成功,则返回过滤后的值;如果过滤失败,则返回 false。

示例:

$email = "john.doe@example.com";

// 验证电子邮件地址
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "有效的电子邮件地址";
} else {
    echo "无效的电子邮件地址";
}

$url = "http://www.example.com";

// 验证URL
if (filter_var($url, FILTER_VALIDATE_URL)) {
    echo "有效的URL";
} else {
    echo "无效的URL";
}

$dirtyString = "<p>Hello, World!</p>";

// 删除标签,HTML特殊字符转换为HTML实体
$cleanString = filter_var($dirtyString, FILTER_SANITIZE_STRING);
echo $cleanString;

以上示例中,filter_var() 函数分别用于验证电子邮件地址和URL,以及删除HTML标签和转换HTML特殊字符。根据传入的参数和过滤器类型,函数会返回相应的结果。

补充纠错
上一个函数: filter_var_array()函数
下一个函数: filter_list()函数
热门PHP函数
分享链接