PHP开发中常用的三个表单验证函数使用小结


Posted in PHP onMarch 03, 2010

ISSET();——适合于检测是否存在这个参数。

定义和作用范围:用于测试一个变量是否具有值(包括0,FALSE,或者一个空字串,但不能是NULL),即:“http://localhost/?fo=”也是可以通过检测,因此不适用。但如果是“http://localhost/”参数中并不含fo参数,就可以用isset来检测,此时isset($_GET['fo'])返回false。

不适用于:该函数不适合于验证html表单中的文本的有效方式。要检查用户输入文本是否有效,可以用empty();

empty();——最好用的一个函数。

定义和作用范围:用于检查变量是否具有空值:包括:空字串,0,null 或false,即:“http://localhost/?fo=”或“http://localhost/?fo=0”时,empty检测出来的结果都是ture,不适用范围:不适用于检测可为0的参数。

is_numeric();——只适用于检测数字,但假如参数名不存在,会出错,因此不适合于第一层检测。

综合示例:

<?php 
ini_set("display_errors",1); 
//ini_set("error_reporting",E_ALL); print_r 
error_reporting(E_ALL); $a=NULL; 
if(isset($a))echo '变量$a的isset为真'; 
echo '<h2>isset的情形:</h2>'; 
if(isset($_GET['fo'])){ 
echo '变量\'fo\'的isset为真,变量可用'; 
}else{ 
echo '变量\'fo\'的isset为假,无变量设置'; 
} 
echo '<h2>empty的情形:</h2>'; 
if(empty($_GET['fo'])){ 
echo '变量\'fo\'的empty为真,即空值或无效值'; 
}else{ 
echo '变量\'fo\'的empty为假,有值'; 
} 
echo '<h2>is_numeric的情形:</h2>'; 
if(is_numeric($_GET['fo'])){ //在参数中无fo参数时,则出错。 
echo '变量\'fo\'的is_numeric为真,是数字'; 
}else{ 
echo '变量\'fo\'的is_numeric为假,不是数字'; 
} 
echo "<h2>\$_GET['fo']=''的情形:</h2>"; 
if($_GET['fo']==''){ //在参数中无fo参数时,则出错。 
echo 'fo无值,空的字符串'; 
}elseif($_GET['fo']!=''){ 
echo 'fo有值,不为\'\'.'; 
} 
echo "<h2>\$_GET['sex']='m'的情形:</h2>"; 
if($_GET['sex']=='m'){ //当参数中无sex变量时就会出错。 
echo '男的'; 
}elseif($_GET['sex']=='f'){ 
echo '女的'; 
} 
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>无标题文档</title> 
</head> 
<body> 
</body> 
<p> 
<a href="?fo=Jack">传有效值</a> <a href="?fo=">传空值</a> <a href="?fo=0">传0值</a> 
<br /><br /> 
<a href="?sex=m">性别:男</a> <a href="?sex=f">性别:女</a> 
<br /><br /> 
<a href="/">清空</a> 
<br /><br /> 
<input type="text" value="<?php echo $_GET['fo']!=''?$_GET['fo']:'';?>" size="155" /> </p> 
</html>
PHP 相关文章推荐
封装一个PDO数据库操作类代码
Sep 09 PHP
PHP Zip解压 文件在线解压缩的函数代码
May 26 PHP
Youku 视频绝对地址获取的方法详解
Jun 26 PHP
深入解析fsockopen与pfsockopen的区别
Jul 05 PHP
PHP生成sitemap.xml地图函数
Nov 13 PHP
php中fgetcsv()函数用法实例
Nov 28 PHP
thinkPHP使用post方式查询时分页失效的解决方法
Dec 09 PHP
php自定义函数实现二维数组排序功能
Jul 20 PHP
php中array_slice和array_splice函数解析
Oct 18 PHP
探究Laravel使用env函数读取环境变量为null的问题
Dec 06 PHP
PHP环形链表实现方法示例
Sep 15 PHP
Laravel使用RabbitMQ的方法示例
Jun 18 PHP
PHP 引用文件技巧
Mar 02 #PHP
php下过滤html代码的函数 提高程序安全性
Mar 02 #PHP
PHP set_time_limit(0)长连接的实现分析
Mar 02 #PHP
PHP clearstatcache()函数详解
Mar 02 #PHP
PHP strtok()函数的优点分析
Mar 02 #PHP
关于PHP5 Session生命周期介绍
Mar 02 #PHP
PHP正则的Unknown Modifier错误解决方法
Mar 02 #PHP
You might like
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
2019/05/25 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
javascript静态的url如何传递
2007/05/03 Javascript
jQuery文本框(input textare)事件绑定方法教程
2013/04/24 Javascript
如何通过javascript操作web控件的自定义属性
2013/11/25 Javascript
js 验证身份证信息有效性
2014/03/28 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
2015/01/07 Javascript
js实现拖拽效果
2015/02/12 Javascript
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
jquery实现简单Tab切换菜单效果
2020/07/17 Javascript
微信小程序-拍照或选择图片并上传文件
2017/01/06 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
微信小程序自定义音乐进度条的实例代码
2018/08/28 Javascript
使用post方法实现json往返传输数据的方法
2019/03/30 Javascript
vue 实现滚动到底部翻页效果(pc端)
2019/07/31 Javascript
教你如何用Node实现API的转发(某音乐)
2019/09/20 Javascript
JavaScript中window和document用法详解
2020/07/28 Javascript
JavaScript 监听组合按键思路及代码实现
2020/07/28 Javascript
在Vue中使用CSS3实现内容无缝滚动的示例代码
2020/11/27 Vue.js
JavaScript/TypeScript 实现并发请求控制的示例代码
2021/01/18 Javascript
Python文件和目录操作详解
2015/02/08 Python
python 实现A*算法的示例代码
2018/08/13 Python
Django REST framework视图的用法
2019/01/16 Python
Python之字典添加元素的几种方法
2020/09/30 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
乌克兰在线商店的价格比较:Price.ua
2019/07/26 全球购物
毕业生文员求职信
2013/11/03 职场文书
经济管理专业毕业生推荐信
2013/11/11 职场文书
婚庆公司的创业计划书
2014/01/22 职场文书
我爱我的祖国演讲稿
2014/05/04 职场文书
企业法人代表任命书
2014/06/06 职场文书
党委书记群众路线对照检查材料思想汇报
2014/10/04 职场文书
大学生毕业评语
2014/12/31 职场文书
小学四年级作文之人物作文
2019/11/06 职场文书