博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP过滤器函数
阅读量:2176 次
发布时间:2019-05-01

本文共 2396 字,大约阅读时间需要 7 分钟。

filter_has_var:检测是否存在指定类型的变量。接受两个参数,第一个是,第二个是变量名。

filter_id:返回与某个特定名称的过滤器相关联的id。

filter_list:返回所支持的过滤器列表。

filter_input:通过名称获取特定的外部变量,并且可以选择通过过滤器对其进行过滤。接受四个参数,第一个参数为,第二个参数是变量名,第三个参数是可选的要使用的,默认为FILTER_DEFAULT,即不进行过滤。第四个参数是可选的过滤器使用的选项的关联数组,或按位区分的标识。如果获取成功则返回指定的变量,如果失败则返回false,如果指定的变量不存在则返回null。如果使用了FILTER_NULL_ON_FAILURE标记则当变量不存在时返回false,过滤失败返回null。

filter_input_array:获取一系列外部变量,并且可以选择通过过滤器对其进行过滤。接受四个参数,第一个参数为变量类型,第二个参数为可选的要使用的过滤器。可以是一个数组:数组的键为一个包含变量名的字符串,数组的值可以是过滤器类型常量,也可以是一个指明了过滤器、标识和选项的数组,此数组有效的键为filter指明过,flags指明要用于过滤器的或者options指明要用于过滤器的。还可以只是一个过滤器类型常量,所有的变量都会使用这个过滤器。第三个参数为PHP5.4新增的可选参数,用于指定如果指定的键不存在时,将其值设置为null,默认为true。如果处理成功,返回包含所有变量的数组,失败则返回false。如果指定的变量不存在则返回null。如果使用了FILTER_NULL_ON_FAILURE标记则当变量不存在时返回false,过滤失败返回null。

filter_var:使用特定的过滤器过滤一个变量。接受三个参数,第一个为带过滤的变量,第二个参数为可选的要使用的,默认为FILTER_DEFAULT,即不进行过滤。第三个参数为可选的过滤器使用的选项的关联数组,或按位区分的标识。如果过滤器接受选项,可以通过数组的flags指定这些标识。对于回调型的过滤器,应该传入回调函数的名称,回调函数必须接受一个待过滤的值,并返回一个过滤后的值。

filter_var_array:获取多个变量并且可以选择通过过滤器对其进行过滤。接受三个参数,第一个为变量数组,键为变量名,值为变量值,即待过滤的值。第二个参数为可选的要使用的过滤器。可以是一个数组:数组的键为一个包含变量名的字符串,数组的值可以是过滤器类型常量,也可以是一个指明了过滤器、标识和选项的数组,此数组有效的键为filter指明过,flags指明要用于过滤器的或者options指明要用于过滤器的。还可以只是一个过滤器类型常量,所有的变量都会使用这个过滤器。第三个参数为PHP5.4新增的可选参数,用于指定如果指定的键不存在时,将其值设置为null,默认为true。如果处理成功,返回包含所有变量的数组,失败则返回false。如果指定的变量不存在则返回null。如果使用了FILTER_NULL_ON_FAILURE标记则当变量不存在时返回false,过滤失败返回null。

";$str="QWERTYUIOPASDFGHJKLZXCVBNM1234567890qwertyuiopasdfghjklzxcvbnm";$num=rand(5,20);$random_test_value=substr(str_shuffle($str),rand(5,strlen($str)),$num);$args=array( "id" =>array('filter' => FILTER_VALIDATE_INT, 'options'=> array('min_range' => 1, 'max_range' => 10) ), "missing"=>FILTER_SANITIZE_ENCODED, "searched"=>FILTER_SANITIZE_ENCODED);$vars=filter_input_array(INPUT_GET,$args);echo "Search again.$char_br";if(filter_has_var(INPUT_GET,"searched")){ $search_html = $vars["searched"]; echo "You have searched for $search_html.$char_br";}else{ echo "You searched nothing$char_br";}var_dump($vars);$options=array( 'options'=>array( 'default' => 5, 'min_range' => 1, 'max_range' => 10 ), 'flags' => FILTER_FLAG_ALLOW_OCTAL,);echo "id filtered by filter_var is:".filter_var($vars["id"],FILTER_VALIDATE_INT,$options)."$char_br";echo "invoke filter_var_array filter agagin:$char_br";var_dump(filter_var_array(filter_input_array(INPUT_GET),$args));echo "支持的过滤器:$char_br id=>name $char_br";foreach(filter_list() as $v){ echo filter_id($v),"=>$v$char_br";}?>

 

转载地址:http://tykkb.baihongyu.com/

你可能感兴趣的文章
强化学习第3课:有些问题就像个赌局
查看>>
强化学习第4课:这些都可以抽象为一个决策过程
查看>>
强化学习第5课:什么是马尔科夫决策过程
查看>>
强化学习第6课:什么是 Crossentropy 方法
查看>>
强化学习第7课:交叉熵方法的一些局限性
查看>>
强化学习 8: approximate reinforcement learning
查看>>
图解什么是 Transformer
查看>>
代码实例:如何使用 TensorFlow 2.0 Preview
查看>>
6 种用 LSTM 做时间序列预测的模型结构 - Keras 实现
查看>>
走进JavaWeb技术世界1:JavaWeb的由来和基础知识
查看>>
走进JavaWeb技术世界2:JSP与Servlet的曾经与现在
查看>>
走进JavaWeb技术世界3:JDBC的进化与连接池技术
查看>>
走进JavaWeb技术世界4:Servlet 工作原理详解
查看>>
走进JavaWeb技术世界5:初探Tomcat的HTTP请求过程
查看>>
走进JavaWeb技术世界6:Tomcat5总体架构剖析
查看>>
走进JavaWeb技术世界7:Tomcat和其他WEB容器的区别
查看>>
走进JavaWeb技术世界9:Java日志系统的诞生与发展
查看>>
走进JavaWeb技术世界10:从JavaBean讲到Spring
查看>>
走进JavaWeb技术世界11:单元测试框架Junit
查看>>
走进JavaWeb技术世界12:从手动编译打包到项目构建工具Maven
查看>>