if(!isset($lichi)){
echo'未定义';
if(empty($lichi)){
echo '未定义的显示为空的';//最终会走到这来
}
}
手册类型比较表
empty为真
$x = "";
$x = null;
var $x;
$x is undefined
$x = array();
$x = false;
$x = 0;
$x = "0";
empty为假:
$x = "false";
$x = "true";
$x = "php";
$x = "-1";
$x = "1";
$x = -1;
$x = 42;
$x = 1;
$x = true;
数组
array() 在isset中为 真
空
'' 在isset中为 真
空
' ' 在isset中为 真
null
在isset中为 假
'0'
在isset中为 真
'1'
在isset中为 真
0
在isset中为 真
1
在isset中为 真
除了0和1的数字
在isset中为 真
字符串
在isset中为 真
不存在或者没定义的变量
在isset中为 假
empty()
以下的东西被认为是空的:
"" (空字符串)
0 (作为整数的0)
0.0 (作为浮点数的0)
"0" (作为字符串的0)
NULL
FALSE
array() (一个空数组)
$var; (一个声明了,但是没有值的变量)
空数组
array() 在empty中为 真
空
'' 在empty中为 真
空
' ' 在empty中为 假
null
在empty中为 真
'0'
在empty中为 真
'1'
在empty中为 假
0
在empty中为 真
1
在empty中为 假
除了0和1的数字
在empty中为 假
字符串
在empty中为 假
不存在或者没定义的变量
在empty中为 真
空数组
array() 在is_null中为 假
空
'' 在is_null中为 假
空
' ' 在is_null中为 假
null
在is_null中为 真
'0'
在is_null中为 假
'1'
在is_null中为 假
0
在is_null中为 假
1
在is_null中为 假
除了0和1的数字
在is_null中为 假
字符串
在is_null中为 假
Notice:
Undefined variable: exit in D:\xampp\htdocs\atest\php\autoload\autoload2.php on
line 138
不存在或者没定义的变量
在is_null中为真
$variable=array('isset','empty','is_null');
$_map=array();
$kong='';
$kong2=' ';
$null=NULL;
$specal0 = '0';
$specal1 = '1';
$zero=0;
$one=1;
$num= 5;
$var='youzhi';
foreach ($variable as $value) {
switch ($value)
{
case 'isset':
if(isset($_map)){
echo '空数组 array() 在isset中为 真<br />';
}else{
echo '空数组 array() 在isset中为 假<br />';
}
if(isset($kong)){
echo '空 \'\' 在isset中为 真<br />';
}else{
echo '空 \'\' 在isset中为 假<br />';
}
if(isset($kong2)){
echo '空 \' \' 在isset中为 真<br />';
}else{
echo '空 \' \' 在isset中为 假<br />';
}
if(isset($null)){
echo 'null 在isset中为 真<br />';
}else{
echo 'null 在isset中为 假<br />';
}
if(isset($specal0)){
echo ' \'0\' 在isset中为 真<br />';
}else{
echo ' \'0\' 在isset中为 假<br />';
}
if(isset($specal1)){
echo ' \'1\' 在isset中为 真<br />';
}else{
echo ' \'1\' 在isset中为 假<br />';
}
if(isset($zero)){
echo '0 在isset中为 真<br />';
}else{
echo '0 在isset中为 假<br />';
}
if(isset($one)){
echo '1 在isset中为 真<br />';
}else{
echo '1 在isset中为 假<br />';
}
if(isset($num)){
echo '除了0和1的数字 在isset中为 真<br />';
}else{
echo '除了0和1的数字 在isset中为 假<br />';
}
if(isset($var)){
echo '字符串 在isset中为 真<br />';
}else{
echo '字符串 在isset中为 假<br />';
}
if(isset($exit)){
echo '不存在或者没定义的变量 在isset中为 真<br /><br />';
}else{
echo '不存在或者没定义的变量 在isset中为 假<br /><br />';
}
break;
case 'empty':
if(empty($_map)){
echo '空数组 array() 在empty中为 真<br />';
}else{
echo '空数组 array() 在empty中为 假<br />';
}
if(empty($kong)){
echo '空 \'\' 在empty中为 真<br />';
}else{
echo '空 \'\' 在empty中为 假<br />';
}
if(empty($kong2)){
echo '空 \' \' 在empty中为 真<br />';
}else{
echo '空 \' \' 在empty中为 假<br />';
}
if(empty($null)){
echo 'null 在empty中为 真<br />';
}else{
echo 'null 在empty中为 假<br />';
}
if(empty($specal0)){
echo ' \'0\' 在empty中为 真<br />';
}else{
echo ' \'0\' 在empty中为 假<br />';
}
if(empty($specal1)){
echo ' \'1\' 在empty中为 真<br />';
}else{
echo ' \'1\' 在empty中为 假<br />';
}
if(empty($zero)){
echo '0 在empty中为 真<br />';
}else{
echo '0 在empty中为 假<br />';
}
if(empty($one)){
echo '1 在empty中为 真<br />';
}else{
echo '1 在empty中为 假<br />';
}
if(empty($num)){
echo '除了0和1的数字 在empty中为 真<br />';
}else{
echo '除了0和1的数字 在empty中为 假<br />';
}
if(empty($var)){
echo '字符串 在empty中为 真<br />';
}else{
echo '字符串 在empty中为 假<br />';
}
if(empty($exit)){
echo '不存在或者没定义的变量 在empty中为 真<br /><br>';
}else{
echo '不存在或者没定义的变量 在empty中为 假<br /><br />';
}
break;
case 'is_null':
if(is_null($_map)){
echo '空数组 array() 在is_null中为 真<br />';
}else{
echo '空数组 array() 在is_null中为 假<br />';
}
if(is_null($kong)){
echo '空 \'\' 在is_null中为 真<br />';
}else{
echo '空 \'\' 在is_null中为 假<br />';
}
if(is_null($kong2)){
echo '空 \' \' 在is_null中为 真<br />';
}else{
echo '空 \' \' 在is_null中为 假<br />';
}
if(is_null($null)){
echo 'null 在is_null中为 真<br />';
}else{
echo 'null 在is_null中为 假<br />';
}
if(is_null($specal0)){
echo ' \'0\' 在is_null中为 真<br />';
}else{
echo ' \'0\' 在is_null中为 假<br />';
}
if(is_null($specal1)){
echo ' \'1\' 在is_null中为 真<br />';
}else{
echo ' \'1\' 在is_null中为 假<br />';
}
if(is_null($zero)){
echo '0 在is_null中为 真<br />';
}else{
echo '0 在is_null中为 假<br />';
}
if(is_null($one)){
echo '1 在is_null中为 真<br />';
}else{
echo '1 在is_null中为 假<br />';
}
if(is_null($num)){
echo '除了0和1的数字 在is_null中为 真<br />';
}else{
echo '除了0和1的数字 在is_null中为 假<br />';
}
if(is_null($var)){
echo '字符串 在is_null中为 真<br />';
}else{
echo '字符串 在is_null中为 假<br />';
}
if(is_null($exit)){
echo '不存在或者没定义的变量 在is_null中为 真<br />';
}else{
echo '不存在或者没定义的变量 在is_null中为 假<br />';
}
break;
default:
# code...
break;
}
}