2014-01-29 34 views
1

可以说我有一个变量$ a,它包含一个介于0到10之间的整数。$ a需要不为空/不为空来运行代码。它在整数介于1到10之间时起作用,但当它为0时,它将$ a视为空。如何区分0和空变量?

$a = 5; 

if (!empty($a)) 
{ echo "not empty"; } 
else 
{ echo "empty";} 

这种情况下它呼应“不空”。

$a = 0; 

if (!empty($a)) 
{ echo "not empty"; } 
else 
{ echo "empty";} 

但在这种情况下,它回声“空”。

有没有办法区分0和空变量?

回答

1

您可以使用全等运算===来测试零:

$a = 0; 
$isZero = $a === 0; // $isZero is true 
+0

谢谢,这对我有效 –

1

检查为0

if(null === $a || strlen($) === 0) { 
} 
0

有EMPTY和NULL之间的差异。对于$a = 0$a是EMPTY但不是NULL。因此,您可以使用isset($a)来检查$a是否为NULL。

if (isset($a)) { 
echo 'not null'; 
} else { 
echo 'is null'; 
}