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

yipeiwu_com5年前PHP代码库
PHP Filter 简介

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

//除去html标签,或除去编码特殊字符
var_dump(filter_var("<html>中文ABC@#</html><script>abc</script><b>BBB</b><span>",FILTER_SANITIZE_STRING));

//url_encoded编码,除去或编码特殊字符
var_dump(filter_var("http://中文啊",FILTER_SANITIZE_ENCODED));

//html转义字符""<>&以及ASCII值小于32的字符。
var_dump(filter_var("<A&B#\">",FILTER_SANITIZE_SPECIAL_CHARS));

//删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
var_dump(filter_var("AS$&><",FILTER_SANITIZE_EMAIL));

//删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&=
var_dump(filter_var("k<>!",FILTER_SANITIZE_URL));

//删除所有字符,除了数字和+-外
var_dump(filter_var("123ABC++",FILTER_SANITIZE_NUMBER_INT));

//删除所有字符,除了数字、+- 以及 .,eE。
var_dump(filter_var("mm.,pp",FILTER_SANITIZE_NUMBER_FLOAT));

//应用addslashes
var_dump(filter_var("aa//''",FILTER_SANITIZE_MAGIC_QUOTES));

//在指定的范围以整数验证值
var_dump(filter_var(20,FILTER_VALIDATE_INT,array("options"=>array("min_range"=>10,"max_range"=>51))));

//如果是 "1", "true", "on" 以及 "yes",则返回 true,如果是 "0", "false", "off", "no" 以及 "",则返回 false。否则返回 NULL。
var_dump(filter_var(1,FILTER_VALIDATE_BOOLEAN));

//以浮点数验证值。
var_dump(filter_var(222,FILTER_VALIDATE_FLOAT));

//验证URL
var_dump(filter_var("http://www.baidu.com",FILTER_VALIDATE_URL));

//验证email
var_dump(filter_var("abcd@123.com",FILTER_VALIDATE_EMAIL));

//验证IP地址
var_dump(filter_var("1.1.1.266",FILTER_VALIDATE_IP));

相关文章

Zend Studio使用技巧两则

本文讲述了两则Zend Studio的使用技巧。分享给大家供大家参考,具体如下: 1.新建文档的模板设置: Window -> Preferences -> PHP ->...

php获取表单中多个同名input元素的值

有时前台页面要允许动态增加/删除某项属性的多个值,比如向书架中添加书本,要可以动态增加或者删除书本。 前台页面的表单中会有多个input元素,如下: 复制代码 代码如下: <for...

深入研究PHP中的preg_replace和代码执行

深入研究PHP中的preg_replace和代码执行

前言 本文将深入研究 preg_replace /e 模式下的代码执行问题,其中包括 preg_replace 函数的执行过程分析、正则表达式分析、漏洞触发分析,当中的坑非常多,相信看完...

PHP var_dump遍历对象属性的函数与应用代码

本文章下面我们要为你提供二种关于遍历对象属性方法,并且举例说明遍历对象属性在php中的应用。可以看出私有变量与静态变量时获取不到的,只有定义为公共变量才可以读出来。 遍历对象属性第一种方...

php的扩展写法总结

为什么要用C扩展 C是静态编译的,执行效率比PHP代码高很多。同样的运算代码,使用C来开发,性能会比PHP要提升数百倍。IO操作如CURL,因为耗时主要在IOWait上,C扩展没有明显...