PHP如何使用filter_var()函数?(代码示例)
在PHP中,filter_var()函数会使用指定的过滤器来过滤变量;它可以过滤用户传递来的数据。下面本篇文章就来给大家介绍一下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 = "148521425@qq.com";
- // 从电子邮件中删除所有非法字符
- $email = filter_var($email, FILTER_SANITIZE_EMAIL);
- // 判断是否为有效的电子邮件
- if (!filter_var($email, FILTER_VALIDATE_EMAIL) === false) {
- echo("$email 是一个有效的电子邮件地址");
- } else {
- echo("$email 不是一个有效的电子邮件地址");
- }
- ?>
输出:
148521425@qq.com 是一个有效的电子邮件地址
示例4:过滤并验证URL
filter_var()函数首先从URL中删除所有非法字符,然后检查是否为有效URL:
- <?php
- header("content-type:text/html;charset=utf-8");
- $url = "https://www.phpfensi.com";
- // 从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://www.phpfensi.com 是一个有效的URL