版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gu_wen_jie/article/details/82801308
首先,提前祝大家中秋节快乐,阖家团圆~~~
找个碎片时间(今天提前放假,美滋滋~~~)更新一篇,主要介绍几个PHP的过滤器函数
1.filter_has_var()
filter_has_var() 函数检查是否存在指定输入类型的变量。
若成功,则返回 true,否则返回 false。
<?php
if(!filter_has_var(INPUT_GET, "name"))
{
echo("Input type does not exist");
}
else
{
echo("Input type exists");
}
这样的话if(isset($_GET[“name”])
这种类似判断就可以这么做了 直接返回true或者false
当然还有很多用法了(自己看名字应该就知道什么用法了):
INPUT_GET
INPUT_POST
INPUT_COOKIE
INPUT_SERVER
INPUT_ENV
(CSDN这波更新很不错,代码终于可以自己选择样式了,好看多了)
2.filter_var()
filter_var() 函数通过指定的过滤器过滤变量。
如果成功,则返回已过滤的数据,如果失败,则返回 false。
以上的是官方的解释,我自己应用的一个地方就是邮箱验证场景,不需要再写各种正则匹配了,像这样:
<?php
if(!filter_var("[email protected]", FILTER_VALIDATE_EMAIL))
{
echo("E-mail is not valid");
}
else
{
echo("E-mail is valid");
}
第二个参数我另外举例几个,大家参考下:
FILTER_VALIDATE_URL 把值作为 URL 来验证
FILTER_VALIDATE_EMAIL 把值作为 e-mail 来验证,上面举例了
FILTER_VALIDATE_IP 把值作为 IP 地址来验证
FILTER_VALIDATE_FLOAT 以浮点数验证值
...
还有很多,就不一一举例了,需要的可以翻阅手册查看一下。
3.FILTER_SANITIZE_STRING过滤器
过滤器去除或编码不需要的字符,删除那些对应用程序有潜在危害的数据。它用于去除标签以及删除或编码不需要的字符。
<?php
$var="<b>test<b>";
var_dump(filter_var($var, FILTER_SANITIZE_STRING));
看结果吧
test
标签已经被去除
4.FILTER_SANITIZE_NUMBER_INT过滤器
过滤器删除数字中所有非法的字符。
<?php
$number="5-2+3test";
var_dump(filter_var($number, FILTER_SANITIZE_NUMBER_INT));
看结果吧
5-2+3
非法字符已经被自动过滤了
就这几个吧,我想说的是人的记忆都是有时间的,经常不用的过段时间就会忘记了,还有很多你就不曾接触过的函数也许会在你的某段代码里有奇效,但你压根不知道,所以经常的翻看手册,函数列表还是很有好处的,包括其他的知识点也是,温故而知新嘛