PHP实现数据过滤不用正则还有哪些方法
Admin 2022-11-17 群英技术资讯 1333 次浏览
今天这篇给大家分享的知识是“PHP实现数据过滤不用正则还有哪些方法”,小编觉得挺不错的,对大家学习或是工作可能会有所帮助,对此分享发大家做个参考,希望这篇“PHP实现数据过滤不用正则还有哪些方法”文章能帮助大家解决问题。
在对用户输入数据进行过滤时通常都是自己写方法进行判断
比如验证邮箱的时候使用正则表达式
$pattern = "/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/";
if (!preg_match($pattern, $email)) {
throw new \Exception(self::ERROR_PARAMETER_EMPTY . '_邮件格式有误:' . $email);
}
如果不用正则还有其它跟简单的方法吗?
filter_has_var(type, variable) 是否存在指定类型的变量。
filter_input 从脚本外部获取输入,并进行过滤。
filter_input_array 从脚本外部获取多项输入,并进行过滤。
filter_var 获取一个变量,并进行过滤。
filter_var_array 获取多项变量,并进行过滤。
判断$_GET 的结果是否包含name
if(!filter_has_var(INPUT_GET, "name"))
{
echo("name 不存在");
}
else
{
echo("name 存在");
}
看一个验证邮箱的例子
if (!filter_input(INPUT_GET, 'email', FILTER_VALIDATE_EMAIL))
{
echo "E-Mail is not valid";
}
else
{
echo "E-Mail is valid";
}
对整个input源进行过滤
$filters = array
(
"name" => array
(
"filter"=>FILTER_CALLBACK,
"flags"=>FILTER_FORCE_ARRAY,
"options"=>"ucwords"
),
"age" => array
(
"filter"=>FILTER_VALIDATE_INT,
"options"=>array
(
"min_range"=>1,
"max_range"=>120
)
),
"email"=> FILTER_VALIDATE_EMAIL,
);
print_r(filter_input_array(INPUT_POST, $filters));
不需要input源,直接对值进行过滤
if(!filter_var("someone@example....com", FILTER_VALIDATE_EMAIL))
{
echo("E-mail is not valid");
}
else
{
echo("E-mail is valid");
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是有关php操作redis常见方法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章有收获,下面一起跟随小编过来看看吧
今天小编就为大家分享一篇使用laravel根据用户类型来显示或隐藏字段,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
PHP下Ajax跨域如何解决?很多PHP新手都会遇到Ajax跨域问题,但是不知道要如何解决,对此,这篇文章就给就大家分享三种方法。感兴趣的朋友就继续往下看吧。
本篇文章给大家带来了Laravel目录结构与配置的相关知识,Laravel的目录结构相对来说在初始状态下会更丰富一些,除了传统的控制器之外,也帮我们准备好了脚本、中间件之类的代码文件的目录,基本上是可以达到上手直接使用的,希望对大家有帮助。
PHP中如何进行按值传参?向函数传递参数的方式有四种,分别是值传递、引用传递、默认参数和可变长度参数。下面先了解如何进行按值传参。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008