php菜狗学习过滤器基础
2021/6/14 20:24:47
本文主要是介绍php菜狗学习过滤器基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
php过滤器是用来验证和过滤用户的输入数据,或者说是来自非安全来源的数据.
1.filter_var过滤验证单个变量
检查一个变量是否符合过滤规则,参数1,2必须,参数三可选。返回过滤后的数据,如果过滤失败则返回 false 。
<?php //验证一个变量是不是整数且符合规范 $a = 99; $result = filter_var($a,FILTER_VALIDATE_INT,array( "options"=>array( "min_range"=>18, "max_range"=>99 ) )); if(!$result){ echo "$a不符合规范"; }else{ echo "$a 符合规范,18<=$a<=99"; } ?> //输出99 符合规范,18<=99<=99
2.filter_var_array(array,filters[,add_empty])过滤验证多个变量
将多个值值使用多个或同一个过滤器过滤
array参数是数组,键是变量名,值就是变量值;filters也是数组,键是对应array参数的键,每个键可以添加filterid,选项options,标签,
<?php $vars = array( "name"=>"aa<script>", "age"=>48, "gender"=>0 ); function genddeng($str){ if($str==0){ return "boy"; }else{ return "girl"; } } $filtar = array( "name"=>FILTER_SANITIZE_ENCODED, "age"=>array( "filter"=>FILTER_VALIDATE_INT, "options"=>array( "min_range"=>18, "max_range"=>48 ) ), "gender"=>array( "filter"=>FILTER_CALLBACK, "options"=>"genddeng" ) ); $mes = filter_var_array($vars, $filtar); var_dump($mes); ?> //结果 array(3) { ["name"]=> string(14) "aa%3Cscript%3E" ["age"]=> int(48) ["gender"]=> string(3) "boy" }
3.filter_id(过滤器名称),获取过滤器名称对应的过滤器的 ID
获取过滤器名称对应的id号,过滤器名称不是FILTER_VALIDATE_EMAIL,FILTER_VALIDATE_URL这样的过滤器ID 名称
过滤器的 ID 号主要是为了更便捷[也更难记忆这些号码],比如过滤器FILTER_VALIDATE_EMAIL的过滤器的 ID 号是274,过滤器名称是validate_email
<?php echo(filter_id("validate_email")); //输出274 ?>
4.filter_list()列出所有的过滤器 名称
这里再次强调过滤器名称不是过滤器id名
例子:
过滤器的 ID: FILTER_VALIDATE_EMAIL
过滤器的ID号: 274
过滤器名称: validate_email
<?php print_r(filter_list()); ?>
//输出 Array ( [0] => int [1] => boolean [2] => float [3] => validate_regexp [4] => validate_url [5] => validate_email [6] => validate_ip [7] => string [8] => stripped [9] => encoded [10] => special_chars [11] => unsafe_raw [12] => email [13] => url [14] => number_int [15] => number_float [16] => magic_quotes [17] => callback )
还有其他的有空再搞…https://www.rfbynet.club是我的网站
这篇关于php菜狗学习过滤器基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享