php过滤器
发布时间:2022-10-20 11:07:21 所属栏目:PHP教程 来源:
导读: 几乎所有 web 应用程序都依赖外部的输入。这些数据通常来自用户或其他应用程序(比如 web 服务)。通过使用过滤器,为了能够确保应有程序获得正确的输入类型,所以应该始终对外部数据进行过滤!
php中的
php中的
几乎所有 web 应用程序都依赖外部的输入。这些数据通常来自用户或其他应用程序(比如 web 服务)。通过使用过滤器,为了能够确保应有程序获得正确的输入类型,所以应该始终对外部数据进行过滤! php中的过滤输入函数就是Filter,主要有: 另外经常用到的Filter函数及filter过滤参数有: 过滤扩展功能有两种过滤器:Sanitizing 和 Logical。 Sanitizing 过滤器只是允许或禁止字符串中的字符并将清理后的字符串作为结果返回。无论您将哪种数据格式传入这些函数,它们将始终返回字符串。对于特定类型的使用,这是至关重要的,因为您可以阻止用户发送不适当的输入并导致异常结果。例如,用户可以发现文本块的输入被返回到以下页面上并且要利用那些返回信息。如果清理输入,则将删除输入的所有危险部分。 Logical 过滤器将对变量执行测试并根据测试提供 true 或 false 结果。然后您可以使用结果来决定如何处理数据或获得用户的地址。这种过滤器的简单示例是验证年龄。逻辑测试还可以针对类似 Perl 的正则表达式进行测试。 用filter_var() 函数来清理输入并使其有效并且安全。在这种情况下,使用选项FILTER_SANITIZE_STRING,该选项将获取输入、删除所有 HTML 标记并选择性地编码或删除特定字符。 由于它将除去 HTML 标记,因此尝试运行 JavaScript 将失败,并且从脚本中获得更适当的结果。 再补充些 PHP: indicates the earliest version of PHP that supports the function. FunctionDescriptionPHP filter_has_var() Checks if a variable of a specified input type exist 5 filter_id() Returns the ID number of a specified filter 5 filter_input() Get input from outside the script and filter it 5 filter_input_array() Get multiple inputs from outside the script and filters them 5 filter_list() Returns an array of all supported filters 5 filter_var_array() Get multiple variables and filter them 5 filter_var() Get a variable and filter it 5 PHP FiltersID NameDescription FILTER_CALLBACK Call a user-defined function to filter data FILTER_SANITIZE_STRING Strip tags, optionally strip or encode special characters FILTER_SANITIZE_STRIPPED Alias of “string” filter FILTER_SANITIZE_ENCODED URL-encode string, optionally strip or encode special characters FILTER_SANITIZE_SPECIAL_CHARS HTML-escape ‘”& and characters with ASCII value less than 32 FILTER_SANITIZE_EMAIL Remove all characters, except letters, digits and !#$%&’*+-/=?^_`{|}~@.[] FILTER_SANITIZE_URL Remove all characters, except letters, digits and $-_.+!*'(),{}|\\^~[]`#%”;/?:@&= FILTER_SANITIZE_NUMBER_INT Remove all characters, except digits and +- FILTER_SANITIZE_NUMBER_FLOAT Remove all characters, except digits, +- and optionally .,eE FILTER_SANITIZE_MAGIC_QUOTES Apply addslashes() FILTER_UNSAFE_RAW Do nothing, optionally strip or encode special characters FILTER_VALIDATE_INT Validate value as integer, optionally from the specified range FILTER_VALIDATE_BOOLEAN Return TRUE for “1”, “true”, “on” and “yes”, FALSE for “0”, “false”, “off”, “no”, and “”, NULL otherwise FILTER_VALIDATE_FLOAT Validate value as float FILTER_VALIDATE_REGEXP Validate value against regexp, a Perl-compatible regular expression FILTER_VALIDATE_URL Validate value as URL, optionally with required components FILTER_VALIDATE_EMAIL Validate value as e-mail FILTER_VALIDATE_IP Validate value as IP address, optionally only IPv4 or IPv6 or not from private or reserved ranges 需要注意的是:如果成功的话将返回转换过之后的格式,如果失败(格式不符PHP过滤器,值超出范围等等。)将返回FALSE,如果变量没有设置将返回NULL。使用FILTER_NULL_ON_FAILURE标记后将会在失败的时候返回NULL,变量没有设置的时候返回FALSE。 (编辑:应用网_常德站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐