• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP中filter_var的使用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

filter_var() 函数通过指定的过滤器过滤变量。 
如果成功,则返回已过滤的数据,如果失败,则返回 false。 
语法 :
filter_var(variable, filter, options)variable:必需。规定要过滤的变量。 

filter:可选。规定要使用的过滤器的 ID。

options:规定包含标志/选项的数组。检查每个过滤器可能的标志和选项。

FiltersID名称:描述 
FILTER_CALLBACK:调用用户自定义函数来过滤数据。 
FILTER_SANITIZE_STRING:去除标签,去除或编码特殊字符。 
FILTER_SANITIZE_STRIPPED:"string" 过滤器的别名。 
FILTER_SANITIZE_ENCODED:URL-encode 字符串,去除或编码特殊字符。 
FILTER_SANITIZE_SPECIAL_CHARS:HTML 转义字符 '"<>& 以及 ASCII 值小于 32 的字符。 
FILTER_SANITIZE_EMAIL:删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[] 
FILTER_SANITIZE_URL:删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&= 
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
    $errorArray=array();
    
    if(isset($_POST['save'])){
      $name=trim($_POST['uname']);
      $address=trim($_POST['address']);    
      $age=trim($_POST['age']);
      $email=trim($_POST['email']);
      $website=trim($_POST['website']);

    if($name=='' || $address=='' || $age=='' || $email=='' || $website==''){
        array_push($errorArray,'Please fill all fileds.');    
    }

    if(filter_var($age,FILTER_VALIDATE_INT)==FALSE){
        array_push($errorArray,'Please enter a number for age.');    
    }

    if(filter_var($email,FILTER_VALIDATE_EMAIL)==FALSE){
        array_push($errorArray,'Email address is incorrect.');    
    }

    if(filter_var($website,FILTER_VALIDATE_URL)==FALSE){
        array_push($errorArray,'Website address is incorrect.');    
    }
    }
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style type="text/css">
    fieldset{width: 400px;}
    .error{color:red;}
    .info{color:#008000;font-weight:bold;}
    </style>
</head>
<body>
<?php
    if(count($errorArray)>0){    
?>
<p class="error">
<?php
    foreach($errorArray as $error){
    echo $error.'<br/>';    
    }
?>
</p>
<?php }?>
    <form method="post">
    <fieldset>
        <legend><strong>All fields are mandatory</strong></legend>
        <table>
        <tbody>
            <tr>
            <td>Name:</td>
            <td><input type="text" name="uname"/></td>
            </tr>
            <tr>
            <td>Address:</td>
            <td><input type="text" name="address"/></td>
            </tr>
            <tr>
            <td>Age:</td>
            <td><input type="text" name="age"/></td>
            </tr>
            <tr>
            <td>Email:</td>
            <td><input type="text" name="email"/></td>
            </tr>
            <tr>
            <td>Website:</td>
            <td><input type="text" name="website"/></td>
            </tr>
        </tbody>
        </table>
    </fieldset>
    <br/>
    <input type="submit" name="save" value="Submit"/>
    </form>
</body>
</html>

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP中的僵尸进程、孤儿进程详解发布时间:2022-07-10
下一篇:
php总结发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap