在PHP开发中,大家经常会对提交的表单数据做合法性验证,比如验证Email/IP/URL,大家首先想到的应该是使用正则验证。其实在PHP中已经内置了一个过滤验证函数Filter,大家可以参考一下。

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

filter_var — Filters a variable with a specified filter

安装

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

PHP Filter 函数

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

PHP Filters

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()。
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 地址来验证。

参考链接:

http://cn2.php.net/manual/zh/book.filter.php

最新文章

  1. 利用Python进行数据分析(2) 尝试处理一份JSON数据并生成条形图
  2. 一台主机上安装多个Tomcat
  3. quick3.5 removeFromParent()导致的windows下模拟器崩溃问题
  4. stm32通用定时器步骤
  5. Java相关
  6. PHP中$_SERVER的详细参数
  7. JavaScript UI选型及Jquery EasyUI使用经验谈
  8. SharpZipLib 文件/文件夹压缩
  9. 反汇编一个dos软盘的启动扇区
  10. 【Entity Framework】 Entity Framework资料汇总
  11. 西安Uber优步司机奖励政策(2月1日~2月7日)
  12. JS可控制的图片自动循环播放查看效果
  13. CSU 1160(进制问题)
  14. 第五十四节,socketserver通讯模块实现并发操作,真多线程并发
  15. sql中查询同一列所有值出现的次数
  16. 闲聊cassandra
  17. while true 死循环判断端口按顺序启动应用
  18. Python入门-函数
  19. 输入input
  20. windows系统下简单nodejs安装及环境配置

热门文章

  1. day06-Spring管理Bean-IOC-04
  2. 反馈电路的Bode分析法
  3. MySQL 索引的创建、删除
  4. JS实现excel数据透析,形成关系图
  5. Java入门与进阶 P-3.5+P-3.6
  6. continue语句-死循环
  7. Redis-03 数据格式和基础命令
  8. el-table 在第一行添加合计行和操作按钮
  9. MongoDB Compass的安装及使用图文说明(非常详细)
  10. ubuntu16.04安装官方cartographer