您的位置:首页 > 编程语言 > PHP开发

php 0,null,false,empty,isset详解

2015-03-31 00:00 621 查看
详细很多出现php的朋友对数字0,字符串'',以及false跟null之间的概念都有点混淆。 先看下面一个例子:
$a=0;$b='';$c=false;$d=null;
if($a) echo '$a判断条件为trur
';
else  echo '$a判断条件为false
';
if($b) echo '$b判断条件为trur
';
else echo '$b判断条件为false
';
if($c) echo '$c判断条件为trur
';
else echo '$c判断条件为false
';
if($d) echo '$d判断条件为trur
';
else echo '$d判断条件为false
';
//输出的结果为:
/*
$a判断条件为false
$b判断条件为false
$c判断条件为false
$d判断条件为false
*/
在if判断里面变量$a,$b,$c,$d判断都为false.
$a=0;$b='';$c=false;$d=null;
if(empty($a)) echo '$a判断条件为trur
';
else  echo '$a判断条件为false
';
if(empty($b)) echo '$b判断条件为trur
';
else echo '$b判断条件为false
';
if(empty($c)) echo '$c判断条件为trur
';
else echo '$c判断条件为false
';
if(empty($d)) echo '$d判断条件为trur
';
else echo '$d判断条件为false
';
//输出结果为:
/*
$a判断条件为trur
$b判断条件为trur
$c判断条件为trur
$d判断条件为trur
*/
bool empty ( mixed $var ) empty()在手册中定义为:如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。
$a=0;$b='';$c=false;$d=null;
if(isset($a)) echo '$a判断条件为trur
';
else  echo '$a判断条件为false
';
if(isset($b)) echo '$b判断条件为trur
';
else echo '$b判断条件为false
';
if(isset($c)) echo '$c判断条件为trur
';
else echo '$c判断条件为false
';
if(isset($d)) echo '$d判断条件为trur
';
else echo '$d判断条件为false
';
//输出结果为:
/*
$a判断条件为trur
$b判断条件为trur
$c判断条件为trur
$d判断条件为false
*/
在isset()判断里面变量$a,$b,$c判断都为true,$d为false 在手册中:isset的解释为,检测变量是否设置,并且不是 NULL。所以$d返回为false
$a=0;$b='';$c=false;$d=null;
if($a==$b) echo '$a==$b成立
';
if($a==$c) echo '$a==$c成立
';
if($a==$d) echo '$a==$d成立
';
//输出结果为:
/*
$a==$b成立
$a==$c成立
$a==$d成立
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  empty isset