PHP自带方法验证邮箱、URL、IP是否合法的函数


Posted in PHP onDecember 08, 2016

以前用PHP验证邮箱、URL、IP是否合法都是通过自己写正则来实现,但是有时候脑子发昏,可能会写出一个不是完全正确的正则,导致验证出错,今天发现原来PHP本身自带了验证邮箱、URL、IP是否合法的函数。

主要使用的是filter_var函数。

语法

filter_var(variable, filter, options)

参数 描述

variable 必需。规定要过滤的变量。

filter 可选。规定要使用的过滤器的 ID。

options 规定包含标志/选项的数组。检查每个过滤器可能的标志和选项。

PHP Filters

ID 名称 描述
FILTER_CALLBACK 调用用户自定义函数来过滤数据。
FILTER_SANITIZE_STRING 去除标签,去除或编码特殊字符。
FILTER_SANITIZE_STRIPPED “string” 过滤器的别名。
FILTER_SANITIZE_ENCODED URL-encode 字符串,去除或编码特殊字符。
FILTER_SANITIZE_SPECIAL_CHARS HTML 转义字符 ‘”& 以及 ASCII 值小于 32 的字符。
FILTER_SANITIZE_EMAIL 删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
FILTER_SANITIZE_URL 删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\\^~[]`#%”;/?:@&=
FILTER_SANITIZE_NUMBER_INT 删除所有字符,除了数字和 +-
FILTER_SANITIZE_NUMBER_FLOAT 删除所有字符,除了数字、+- 以及 .,eE。
FILTER_SANITIZE_MAGIC_QUOTES 应用 addslashes()。
FILTER_UNSAFE_RAW 不进行任何过滤,去除或编码特殊字符。
FILTER_VALIDATE_INT 在指定的范围以整数验证值。
FILTER_VALIDATE_BOOLEAN 如果是 “1″, “true”, “on” 以及 “yes”,则返回 true,如果是 “0″, “false”, “off”, “no” 以及 “”,则返回 false。否则返回 NULL。
FILTER_VALIDATE_FLOAT 以浮点数验证值。
FILTER_VALIDATE_REGEXP 根据 regexp,兼容 Perl 的正则表达式来验证值。
FILTER_VALIDATE_URL 把值作为 URL 来验证。
FILTER_VALIDATE_EMAIL 把值作为 e-mail 来验证。
FILTER_VALIDATE_IP 把值作为 IP 地址来验证。

Example #1 A filter_var() example

<?php
var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));
var_dump(filter_var('http://example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
?>

以上例程会输出:

string(15) "bob@example.com"
bool(false)

以上所述是小编给大家介绍的PHP自带方法验证邮箱、URL、IP是否合法的函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
BBS(php &amp; mysql)完整版(二)
Oct 09 PHP
MySQL相关说明
Jan 15 PHP
PHP性能优化工具篇Benchmark类调试执行时间
Dec 06 PHP
PHP实现的封装验证码类详解
Jun 18 PHP
PHP实现克鲁斯卡尔算法实例解析
Aug 22 PHP
网站防止被刷票的一些思路与方法
Jan 08 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
PHP常用处理静态操作类
Apr 03 PHP
PHP使用mkdir创建多级目录的方法
Dec 22 PHP
CI框架使用composer安装的依赖包步骤与方法分析
Nov 21 PHP
使用ucenter实现多站点同步登录的讲解
Mar 21 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 PHP
Zend Framework入门教程之Zend_Session会话操作详解
Dec 08 #PHP
Zend Framework入门教程之Zend_Mail用法示例
Dec 08 #PHP
Zend Framework入门教程之Zend_Db数据库操作详解
Dec 08 #PHP
zend框架实现支持sql server的操作方法
Dec 08 #PHP
ZendFramework框架实现连接两个或多个数据库的方法
Dec 08 #PHP
thinkPHP模板引擎用法示例
Dec 08 #PHP
thinkPHP中session()方法用法详解
Dec 08 #PHP
You might like
说明的比较细的php 正则学习实例
2008/07/30 PHP
使用php自动备份数据库表的实现方法
2017/07/28 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
如何编写高质量JS代码
2014/12/28 Javascript
JavaScript中利用Array和Object实现Map的方法
2015/07/27 Javascript
Angularjs整合微信UI(weui)
2016/03/15 Javascript
JavaScript必看小技巧(必看)
2016/06/07 Javascript
浅谈Javascript数据属性与访问器属性
2016/07/26 Javascript
JQuery和HTML5 Canvas实现弹幕效果
2017/01/04 Javascript
react-native ListView下拉刷新上拉加载实现代码
2017/08/03 Javascript
代码详解JS操作剪贴板
2018/02/11 Javascript
详解Nodejs mongoose
2018/06/10 NodeJs
一看就会的vuex实现登录验证(附案例)
2020/01/09 Javascript
JavaScript实现网页跨年倒计时
2020/12/02 Javascript
从零学Python之引用和类属性的初步理解
2014/05/15 Python
Python实现远程调用MetaSploit的方法
2014/08/22 Python
在Python中使用mongoengine操作MongoDB教程
2015/04/24 Python
Python安装第三方库的3种方法
2015/06/21 Python
在centos7中分布式部署pyspider
2017/05/03 Python
python 中文件输入输出及os模块对文件系统的操作方法
2018/08/27 Python
pygame实现贪吃蛇游戏(下)
2019/10/29 Python
python框架flask表单实现详解
2019/11/04 Python
Python使用微信接入图灵机器人过程解析
2019/11/04 Python
python基于property()函数定义属性
2020/01/22 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
python在地图上画比例的实例详解
2020/11/13 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
三星新西兰官网:Samsung新西兰
2019/03/05 全球购物
工商企业管理实习自我鉴定
2013/12/04 职场文书
煤矿班组长的职责
2013/12/25 职场文书
《我的信念》教学反思
2014/02/15 职场文书
大学学习个人的自我评价
2014/02/18 职场文书
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
2021/06/30 SQL Server
MongoDB误操作后使用oplog恢复数据
2022/04/11 MongoDB