empty一覧

PHPの empty, isset, is_null の違い早見表

 

gettype() empty() is_null() isset() boolean :
if($var) 
$var = ”; string  

TRUE

 

 

FALSE

 

 

TRUE

 

 

FALSE

 

$var = null; NULL  

TRUE

 

 

TRUE

 

 

FALSE

 

 

FALSE

 

var $x; NULL  

TRUE

 

 

TRUE

 

 

FALSE

 

 

FALSE

 

$var is undefined NULL  

TRUE

 

 

TRUE

 

 

FALSE

 

 

FALSE

 

$var = array(); array  

TRUE

 

 

FALSE

 

 

TRUE

 

 

FALSE

 

$var = false; bool  

TRUE

 

 

FALSE

 

 

TRUE

 

 

FALSE

 

$var = true; bool  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = 1; int  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = 10; int  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = 0; int  

TRUE

 

 

FALSE

 

 

TRUE

 

 

FALSE

 

$var = -1; int  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = ‘1’; string  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = ‘0’; string  

TRUE

 

 

FALSE

 

 

TRUE

 

 

FALSE

 

$var = ‘-1’; string  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = ‘test’; string  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = ‘true’; string  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

$var = ‘false’; string  

FALSE

 

 

FALSE

 

 

TRUE

 

 

TRUE

 

PHPの「empty、isset、is_nullの違い」というのは結構、忘れてしまうものだと思います。
PHPで「empty、isset、is_nullの違い」ってどうだったっけという時には、大きなバグにつながることもあるのでぜひ、参考にしてください。

[参考]
PHP: EMPTY() VS ISSET() VS IS_NULL()