这里我们用如下变量测试:

//$a;   把这个注释掉是因为,用 == 判断的时候程序会提示未定义a
$b = false;
$c = '';
$d = 0;
$e = '0';
$f = null;
$g = 'null';
$h = array();
$i = array(array());

 

首先把$b变量挨个比较:

var_dump($b==$c? 1:0);  //1 false==''
var_dump($b==$d? 1:0);  //1 false==0
var_dump($b==$e? 1:0);  //1 false=='0'
var_dump($b==$f? 1:0);  //1 false==null
var_dump($b==$g? 1:0);  //0 false=='null'
var_dump($b==$h? 1:0);  //1 false==array()
var_dump($b==$i? 1:0);  //0 false==array(array())

 

再用$c与剩下的变量比较:

var_dump($c==$b? 1:0);  //1 ''==false
var_dump($c==$d? 1:0);  //1 ''==0
var_dump($c==$e? 1:0);  //0 ''=='0'
var_dump($c==$f? 1:0);  //1 ''==null
var_dump($c==$g? 1:0);  //0 ''=='null'
var_dump($c==$h? 1:0);  //0 ''==array()
var_dump($c==$i? 1:0);  //0 ''==array(array())

 

 

这里要注意的是:空字符串和空数组是不等的。

 

再用$d与剩下的变量比较:

var_dump($d==$b? 1:0);  //1 0==false
var_dump($d==$c? 1:0);  //1 0==''
var_dump($d==$e? 1:0);  //1 0=='0'
var_dump($d==$f? 1:0);  //1 0==null
var_dump($d==$g? 1:0);  //1 0=='null'
var_dump($d==$h? 1:0);  //0 0==array()
var_dump($d==$i? 1:0);  //0 0==array(array())

 

 这里要注意:0和'null'居然是相等的!

 

 再用$e与剩下的变量比较:

var_dump($e==$b? 1:0);  //1 '0'==false
var_dump($e==$c? 1:0);  //0 '0'==''
var_dump($e==$d? 1:0);  //1 '0'==0
var_dump($e==$f? 1:0);  //0 '0'==null
var_dump($e==$g? 1:0);  //0 '0'=='null'
var_dump($e==$h? 1:0);  //0 '0'==array()
var_dump($e==$i? 1:0);  //0 '0'==array(array())

 

这里注意:'0'与false相等。

 

 再用$f与剩下的变量比较:

var_dump($f==$b? 1:0);  //1 null==false
var_dump($f==$c? 1:0);  //1 null==''
var_dump($f==$d? 1:0);  //1 null==0
var_dump($f==$e? 1:0);  //0 null=='0'
var_dump($f==$g? 1:0);  //0 null=='null'
var_dump($f==$h? 1:0);  //1 null==array()
var_dump($f==$i? 1:0);  //0 null==array(array())

 

这里需要全部注意!!!

 

 再用$g与剩下的变量比较:

var_dump($g==$b? 1:0);  //0 'null'==false
var_dump($g==$c? 1:0);  //0 'null'==''
var_dump($g==$d? 1:0);  //1 'null'==0
var_dump($g==$e? 1:0);  //0 'null'=='0'
var_dump($g==$f? 1:0);  //0 'null'==null
var_dump($g==$h? 1:0);  //0 'null'==array()
var_dump($g==$i? 1:0);  //0 'null'==array(array())

 

 

 再用$h与剩下的变量比较:

var_dump($h==$b? 1:0);  //1 array()==false
var_dump($h==$c? 1:0);  //0 array()==''
var_dump($h==$d? 1:0);  //0 array()==0
var_dump($h==$e? 1:0);  //0 array()=='0'
var_dump($h==$f? 1:0);  //1 array()==null
var_dump($h==$g? 1:0);  //0 array()=='null'
var_dump($h==$i? 1:0);  //0 array()==array(array())

 

 

 再用$i与剩下的变量比较:

var_dump($i==$b? 1:0);  //0 array(array())==false
var_dump($i==$c? 1:0);  //0 array(array())==''
var_dump($i==$d? 1:0);  //0 array(array())==0
var_dump($i==$e? 1:0);  //0 array(array())=='0'
var_dump($i==$f? 1:0);  //0 array(array())==null
var_dump($i==$g? 1:0);  //0 array(array())=='null'
var_dump($i==$h? 1:0);  //0 array(array())==array()

 

总结如下: