php中filter函数验证、过滤用户输入的数据

PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤,下面为大家整理了一些,需要的朋友可以了解下

PHP Filter 简介

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

  1. //除去html标签,或除去编码特殊字符
  2. var_dump(filter_var("<html>中文ABC@#</html><script>abc</script><b>BBB</b><span>",FILTER_SANITIZE_STRING));
  3. //url_encoded编码,除去或编码特殊字符
  4. var_dump(filter_var("http://中文啊",FILTER_SANITIZE_ENCODED));
  5. //html转义字符""<>&以及ASCII值小于32的字符。
  6. var_dump(filter_var("<A&B#\">",FILTER_SANITIZE_SPECIAL_CHARS));
  7. //删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
  8. var_dump(filter_var("AS$&><",FILTER_SANITIZE_EMAIL));
  9. //删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=
  10. var_dump(filter_var("k<>!",FILTER_SANITIZE_URL));
  11. //删除所有字符,除了数字和+-外
  12. var_dump(filter_var("123ABC++",FILTER_SANITIZE_NUMBER_INT));
  13. //删除所有字符,除了数字、+- 以及 .,eE。
  14. var_dump(filter_var("mm.,pp",FILTER_SANITIZE_NUMBER_FLOAT));
  15. //应用addslashes
  16. var_dump(filter_var("aa//''",FILTER_SANITIZE_MAGIC_QUOTES));
  17. //在指定的范围以整数验证值
  18. var_dump(filter_var(20,FILTER_VALIDATE_INT,array("options"=>array("min_range"=>10,"max_range"=>51))));
  19. //如果是 "1", "true", "on" 以及 "yes",则返回 true,如果是 "0", "false", "off", "no" 以及 "",则返回 false。否则返回 NULL。
  20. var_dump(filter_var(1,FILTER_VALIDATE_BOOLEAN));
  21. //以浮点数验证值。
  22. var_dump(filter_var(222,FILTER_VALIDATE_FLOAT));
  23. //验证URL
  24. var_dump(filter_var("http://www.baidu.com",FILTER_VALIDATE_URL));
  25. //验证email
  26. var_dump(filter_var("abcd@123.com",FILTER_VALIDATE_EMAIL));
  27. //验证IP地址
  28. var_dump(filter_var("1.1.1.266",FILTER_VALIDATE_IP));