PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法

2015-01-24信息快讯网

PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法分享,学习php的朋友可以参考下。

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中如何调用webservice的实例参考
php class中self,parent,this的区别以及实例介绍
PHP中::、-&gt;、self、$this几种操作符的区别介绍
关于Iframe如何跨域访问Cookie和Session的解决方法
PHP If Else(elsefi) 语句
PHP中使用cURL实现Get和Post请求的方法
file_get_contents获取不到网页内容的解决方法
PHP和.net中des加解密的实现方法
PHP-redis中文文档介绍
php中使用redis队列操作实例代码
set_include_path和get_include_path使用及注意事项
破解.net程序(dll文件)编译和反编译方法
PHP中CURL方法curl_setopt()函数的参数分享
mysqli_set_charset和SET NAMES使用抉择及优劣分析
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
PHP学习笔记 IIS7下安装配置php环境
详解php的魔术方法__get()和__set()使用介绍
PHP IF ELSE简化/三元一次式的使用
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
php程序的国际化实现方法(利用gettext)
php中使用Curl、socket、file_get_contents三种方法POST提交数据
php数据结构 算法(PHP描述) 简单选择排序 simple selection sort
php中设置多级目录session的问题
discuz程序的PHP加密函数原理分析
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
PHP调用Webservice实例代码
php模拟socket一次连接,多次发送数据的实现代码
关于php连接mssql:pdo odbc sql server
PHP setcookie设置Cookie用法(及设置无效的问题)
PHP array_multisort()函数的使用札记
php设计模式 Visitor 访问者模式
从康盛产品(discuz)提取出来的模板类
php whois查询API制作方法
php中session_unset与session_destroy的区别分析
PHP curl_setopt()函数实例代码与参数分析
The specified CGI application misbehaved by not returning a complete set of HTTP headers
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
©2014-2024 dbsqp.com