博客列表 >PHP filter 过滤器知识

PHP filter 过滤器知识

饮雪煮茶
饮雪煮茶原创
2020年01月14日 12:34:21965浏览

SERVER详解:

  1. $_SERVER['HTTP_ACCEPT_LANGUAGE']; //浏览器语言
  2. $_SERVER['REMOTE_ADDR'];//当前用户IP
  3. $_SERVER['REMOTE_HOST'];//当前用户主机名
  4. $_SERVER['REQUEST_URI'];//URL
  5. $_SERVER['SERVER_NAME'];//服务器主机的名称
  6. $_SERVER['REMOTE_PORT'];//端口
  7. $_SERVER['PHP_SELF'];//正在执行脚本的文件名
  8. $_SERVER['argv'];//传递给该脚本的参数
  9. $_SERVER['argc'];//传递给程序的命令行参数的个数
  10. $_SERVER['GATEWAY_INTERFACE'];//CGI规范的版本
  11. $_SERVER['SERVER_SOFTWARE'];//服务器标识的字串
  12. $_SERVER['SERVER_PROTOCOL'];//请求页面时的通信协议的名称和版本
  13. $_SERVER['REQUEST_METHOD'];//访问页面时的请求方法
  14. $_SERVER['QUERY_STRING'];//查询(query)的字符串
  15. $_SERVER['DOCOUMENT_ROOT'];//当前运行脚本所在的文档根目录
  16. $_SERVER['HTTP_ACCEPT'];//当前请求的Accept:头部的内容
  17. $_SERVER['HTTP_ACCEPT_CHARSET'];//当前请求的Accetp-Charset:头部的内容
  18. $_SERVER['HTTP_ACCEPT_ENCODING'];//当前请求的Accept-Encoding:头部的内容
  19. $_SERVER['HTTP_CONNECTION'];//当前请求的 Connection: 头部的内容。例如:“Keep-Alive”
  20. $_SERVER['HTTP_HOST'] //当前请求的 Host: 头部的内容
  21. $_SERVER['HTTP_REFERER'] //链接到当前页面的前一页面的 URL 地址
  22. $_SERVER['HTTP_USER_AGENT'] //当前请求的 User_Agent: 头部的内容
  23. $_SERVER['HTTPS']//如果通过https访问,则被设为一个非空的值(on),否则返回off
  24. $_SERVER['SCRIPT_FILENAME'] #当前执行脚本的绝对路径名
  25. $_SERVER['SERVER_ADMIN'] #管理员信息
  26. $_SERVER['SERVER_PORT'] #服务器所使用的端口
  27. $_SERVER['SERVER_SIGNATURE'] #包含服务器版本和虚拟主机名的字符串
  28. $_SERVER['PATH_TRANSLATED'] #当前脚本所在文件系统(不是文档根目录)的基本路径
  29. $_SERVER['SCRIPT_NAME'] #包含当前脚本的路径。这在页面需要指向自己时非常有用
  30. $_SERVER['PHP_AUTH_USER'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名
  31. $_SERVER['PHP_AUTH_PW'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码
  32. $_SERVER['AUTH_TYPE'] #当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型

PHP filter_has_var() 函数

filter_has_var() 函数检查是否存在指定输入类型的变量。如果陈工则返回TURE,如果失败则返回FALSE

  1. filter_has_var(INPUT_GET,"name");
  2. filter_has_var(INPUT_POST,"name");
  3. filter_has_var(INPUT_COOKIE,"name");
  4. filter_has_var(INPUT_SERVER,"name");
  5. filter_has_var(INPUT_ENV,"name");

PHP filer_id() 函数

filter_id() 函数返回指定过滤器的 ID 号。如果成功则返回过滤器的 ID 号,如果过滤器不存在则返回 NULL

  1. filter_name(过滤器名称);

PHP filter_input() 函数

filter_input() 函数从脚本外部获取输入(比如表单输入),并进行过滤。该函数用于对来自非安全来源的变量进行验证,比如用户输入。

  1. filter_input(input_type, variable, filter, optons);
  2. //input_type:必需,规定输入类型(INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_ENV, INPUT_SERVER)
  3. //variable:必需,固定要过滤的变量,外部输入变量。
  4. //filter:可选。规定要使用的过滤器的id或者过滤器名称。默认值是 `FILTER_SANITIZE_STRING`
  5. //option:可选,规定一个包含标志/选项的关联数组或者一个单一的标志/选项。检查每个过滤器可能的标志和选项

PHP filter_input_array() 函数

filter_input_array() 函数从脚本外部获取多项输入(比如表单输入),并进行过滤,可以理解为 filer_input() 函数的数组形式。

  1. filter_input_array(input_type, filter_args);
  2. //input_type:外部输入需要过滤数组。
  3. //filter_args:可选,规定过滤器参数的数组。合法的数组键名是变量名,合法的值是过滤器ID或者过滤器名称。

filter_list() 显示过滤器名称

  1. Array
  2. (
  3. [0] => int
  4. [1] => boolean
  5. [2] => float
  6. [3] => validate_regexp
  7. [4] => validate_url
  8. [5] => validate_email
  9. [6] => validate_ip
  10. [7] => string
  11. [8] => stripped
  12. [9] => encoded
  13. [10] => special_chars
  14. [11] => unsafe_raw
  15. [12] => email
  16. [13] => url
  17. [14] => number_int
  18. [15] => number_float
  19. [16] => magic_quotes
  20. [17] => callback
  21. )

PHP filter_var() 函数

filter_var() 函数通过指定的过滤器过滤一个变量,如果成功,则返回过滤的数据,如果失败,则返回FALSE

  1. filter_var(variable, filter, options);
  2. //variable:必需,规定要过滤的变量。
  3. //filter:可选,规定要使用的过滤器ID,默认是FILTER_SANITIZE_STRING
  4. //options:可选,规定一个包含标志/选项的关联数组或者一个单一的标志/选项,检查每个过滤器可能的标志和选项

PHP filter_var_array() 函数

filter_var_array() 函数获取多个变量,并进行过滤,filer_var的数组形式

  1. filter_var_array(array, args);
  2. //array:必需,规定带有字符串键名的数组,包含要过滤的数据。
  3. //arg:可选,规定过滤参数数组,合法的数组键名是变量名,合法的值是过滤器ID

PHP过滤器

  1. FILTER_CALLBACK//调用用户自定义函数来过滤数据。
  2. FILTER_SANITIZE_STRING//去除标签,去除或编码特殊字符。
  3. FILTER_SANITIZE_STRIPPED//"string" 过滤器的别名。
  4. FILTER_SANITIZE_ENCODED//URL-encode 字符串,去除或编码特殊字符。
  5. FILTER_SANITIZE_SPECIAL_CHARS//HTML 转义字符 '"<>& 以及 ASCII 值小于 32 的字符。
  6. FILTER_SANITIZE_EMAIL//删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
  7. FILTER_SANITIZE_URL//删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\^~[]`<>#%";/?:@&=
  8. FILTER_SANITIZE_NUMBER_INT//删除所有字符,除了数字和 +-
  9. FILTER_SANITIZE_NUMBER_FLOAT//删除所有字符,除了数字、+- 以及 .,eE
  10. FILTER_SANITIZE_MAGIC_QUOTES//应用 addslashes()。
  11. FILTER_UNSAFE_RAW//不进行任何过滤,去除或编码特殊字符。
  12. FILTER_VALIDATE_INT//把值作为整数来验证。
  13. FILTER_VALIDATE_BOOLEAN//把值作为布尔选项来验证。如果是 "1"、"true"、"on" 和 "yes",则返回 TRUE。如果是 "0"、"false"、"off"、"no" 和 "",则返回 FALSE。否则返回 NULL。
  14. FILTER_VALIDATE_FLOAT//把值作为浮点数来验证。
  15. FILTER_VALIDATE_REGEXP//根据 regexp(一种兼容 Perl 的正则表达式)来验证值。
  16. FILTER_VALIDATE_URL//把值作为 URL 来验证。
  17. FILTER_VALIDATE_EMAIL//把值作为 e-mail 地址来验证。
  18. FILTER_VALIDATE_IP//把值作为 IP 地址来验证,只限 IPv4 或 IPv6 或 不是来自私有或者保留的范围。

![]

![

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议