zoukankan      html  css  js  c++  java
  • filter_input() 函数

    定义和用法

    filter_input() 函数从脚本外部获取输入,并进行过滤。

    本函数用于对来自非安全来源的变量进行验证,比如用户的输入。

    本函数可从各种来源获取输入:

    • INPUT_GET
    • INPUT_POST
    • INPUT_COOKIE
    • INPUT_ENV
    • INPUT_SERVER
    • INPUT_SESSION (Not yet implemented)
    • INPUT_REQUEST (Not yet implemented)

    如果成功,则返回被过滤的数据,如果失败,则返回 false,如果 variable 参数未设置,则返回 NULL。

    语法

    filter_input(input_type, variable, filter, options)
    参数描述
    input_type 必需。规定输入类型。参见上面的列表中可能的类型。
    variable 规定要过滤的变量。
    filter

    可选。规定要使用的过滤器的 ID。默认是 FILTER_SANITIZE_STRING。

    请参见完整的 PHP Filter 函数参考手册,获得可能的过滤器。

    过滤器 ID 可以是 ID 名称 (比如 FILTER_VALIDATE_EMAIL),或 ID 号(比如 274)。

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

    在本例中,我们使用 filter_input() 函数来过滤一个 POST 变量。所接受的 POST 变量是合法的 e-mail 地址。

    <?php
    if (!filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL))
     {
     echo "E-Mail is not valid";
     }
    else
     {
     echo "E-Mail is valid";
     }
    ?>

    输出类似:

    E-Mail is valid

    Filter 函数

    用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。

    filter 函数是 PHP 核心的组成部分。无需安装即可使用这些函数

    PHP:指示支持该函数的最早的 PHP 版本。

    函数描述PHP
    filter_has_var() 检查是否存在指定输入类型的变量。 5
    filter_id() 返回指定过滤器的 ID 号。 5
    filter_input() 从脚本外部获取输入,并进行过滤。 5
    filter_input_array() 从脚本外部获取多项输入,并进行过滤。 5
    filter_list() 返回包含所有得到支持的过滤器的一个数组。 5
    filter_var_array() 获取多项变量,并进行过滤。 5
    filter_var() 获取一个变量,并进行过滤。 5










    ID 名称描述
    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()(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 地址来验证













  • 相关阅读:
    设计模式-单件模式 实现
    设计模式-观察者模式 实现
    设计模式-策略模式 实现
    笔记- 设计模式:设计原则
    EventBus 发布/订阅 机制的 java 实现
    webService 客户端 以wsimport方式生成对应java文件
    【安装mysql】windows安装压缩版mysql5.7.15
    eclipse插件开发入门
    Java程序开发.邱加永2.1节
    Mysql常用表操作 | 单表查询
  • 原文地址:https://www.cnblogs.com/henairan/p/3895506.html
Copyright © 2011-2022 走看看