PHP中很屌但经常被各种忽略的过滤器函数

PHP有些函数被各种小伙伴用烂了。但是也有一些好函数经常被忽略,以至于有些功能其实PHP内置函数都能解决,而我们小伙伴依然会通过各种稀奇古怪的方法来绕弯走。这里我们说的最常见的就是过滤。

我写两个出来,大家体验一下。

一、filter_has_var 函数

譬如你还在用 if(isset($_GET[“name”]) 来判断GET参数 中有name这个参数吗? 或者post参数、或者cookie里

filter_has_var(INPUT_GET, ‘name’) 可以直接返回true或false

第一个参数 可以填 INPUT_GET、 INPUT_POST、 INPUT_COOKIE、 INPUT_SERVER、 INPUT_ENV
看英文你应该知道 是干啥的
二、filter_var 函数

你还在辛辛苦苦的用正则等方式 来验证 字符串是否为email格式吗?

echo filter_var(‘shenyi@hishenyi.com, FILTER_VALIDATE_EMAIL);
如果OK 会返回原值,如果不OK 则返回false

第二个参数有哪些?

验证为主:

1、FILTER_VALIDATE_BOOLEAN .当第一个参数是”1″, “true”, “on” and “yes” 这些字符串时会返回true .否则为false 。所以当用户输入一些 类似布尔类型的值时,你就无需一个个去写if else了。这个参数帮你搞定自动转换

2、FILTER_VALIDATE_EMAIL 你懂得 ,上面已经演示过了。自己想

3、FILTER_VALIDATE_FLOAT 你懂得

4、FILTER_VALIDATE_INT 你懂得

5、FILTER_VALIDATE_IP 你更加懂

6、FILTER_VALIDATE_MAC 是否是mac地址。(不要认为是mac电脑,你觉得可能吗?)

7、FILTER_VALIDATE_REGEXP 判断是否是正则表达式(基于PCRE)。这个很有用哦。尤其做后台时,管理员可能需要进行正则内容的填写。你可以用来判断

8、FILTER_VALIDATE_URL 是否是正规的URL

三.净化过滤 (比较多,我挑几个比较屌的)

1、FILTER_SANITIZE_NUMBER_INT 过滤掉非数字型的内容。这个很屌哦

echo filter_var(‘fuck123’, FILTER_SANITIZE_NUMBER_INT); 直接返回123 ,你懂的
2、FILTER_SANITIZE_MAGIC_QUOTES 看列子

echo filter_var(“fuck’123”, FILTER_SANITIZE_MAGIC_QUOTES); 会输出fuck\’123 .好比执行了 addslashes()
3 、FILTER_SANITIZE_STRING 看例子

echo filter_var(“<fuck>123</fuck>”, FILTER_SANITIZE_STRING); 会输出123

echo filter_var ( “fuck < 5 >6”, FILTER_SANITIZE_STRING); 会输出fuck6 .注意,你如果用 echo strip_tags($str); 是过滤不掉的哦
这个函数还有第三个参数的,可以用来控制一些默认值的返回。请亲自己动一下手

转载来源:PHP中很屌但经常被各种忽略的过滤器函数 - 沈逸的个人站点

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,228评论 19 139
  • php usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解包。 uni...
    思梦PHP阅读 6,220评论 1 24
  • filter_var() 函数通过指定的过滤器过滤变量。如果成功,则返回已过滤的数据,如果失败,则返回 false...
    金星show阅读 4,894评论 0 0
  • PHP常用函数大全 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解...
    上街买菜丶迷倒老太阅读 5,269评论 0 20
  • 西安阵雨 星期六 5月26号 最近我男神又升级了,升级成大叔型了,似乎已经很久很久没因为电视剧着迷了。 哈...
    张晨曦520阅读 3,126评论 1 11

友情链接更多精彩内容