博客列表 >剖析php的这四个过滤器,狙挡黑客攻击,变量直接这么强大...

剖析php的这四个过滤器,狙挡黑客攻击,变量直接这么强大...

张福根一修品牌运营
张福根一修品牌运营原创
2020年11月19日 17:51:38674浏览

php变量过滤器的使用

效果展示:

php变量过滤器

案例源码:

  1. <?php
  2. //php变量过滤器的使用
  3. //变量的过滤器1 filter_var(),filter_var_array()
  4. // filter_var(var,filter,options); 返回值: 返回过滤后的值,否则返回false
  5. $age = '22';
  6. $min = 18;
  7. $max= 35;
  8. $option = array("options"=>array("min_range"=>$min,"max_range"=>$max));
  9. $age = filter_var($age,FILTER_VALIDATE_INT,$options);
  10. var_dump($age);
  11. ECHO '<hr>';
  12. // filter_var_array(array $data, filter)获取多个变量并过滤它们,返回值: 返回过滤后的值,否则返回false
  13. $a = 10;
  14. $b = '90';
  15. $arr = [$a,$b];
  16. $arrs = filter_var_array($arr,FILTER_VALIDATE_INT);
  17. VAR_DUMP($arrs);
  18. ECHO '<hr>';
  19. //变量的过滤器2 filter_input(),filter_input_array()
  20. //同时验证多个外部变量 filter_input_array(输入类型get/post,args规定了过滤器参数数组,键是变量名,值就是过滤器)
  21. $args = [
  22. "username" => FILTER_SANITIZE_STRING,
  23. "age" =>FILTER_VALIDATE_INT,
  24. "blog_url" =>FILTER_VALIDATE_URL,
  25. "ip"=>FILTER_VALIDATE_IP
  26. ];
  27. var_dump(filter_input_array(INPUT_GET,$args));
  28. echo '<hr>';
  29. // filter_input(输入类型get/post,变量名,filter)过滤外部变量:通过http get/post请求发送过来数据,过滤表单数据
  30. $options1 = ["option1"=>["min_range"=>1]];
  31. var_dump(filter_input(INPUT_GET,'id',FILTER_VALIDATE_INT,$option1));//bool(false)
  32. //http://php.edu/zuoye/1118/guolvqi.php?id=6
  33. // int(6)

案例总结:

  • filter_var(var,filter,options); 返回值: 返回过滤后的值,否则返回false
  • filter_var_array(array $data, filter)获取多个变量并过滤它们,返回值: 返回过滤后的值,否则返回false
  • filter_input(输入类型get/post,变量名,filter)过滤外部变量:通过http get/post请求发送过来数据,过滤表单数据
  • 同时验证多个外部变量 filter_input_array(输入类型get/post,args规定了过滤器参数数组,键是变量名,值就是过滤器)
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议
灭绝师太2020-11-20 13:41:011楼
PHP内置的过滤函数可以实现数据的过滤, 省去了基层的代码逻辑, 之后使用的框架中,也在此基础上进行了封装~但是了解原生实现方法是第一步~继续加油~