空値の種類 | empty | isset | is_null | == "" | == null | == false | == 0 | === "" | === null | === false | === 0 | empty0【※1】 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
"" | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 1 |
null | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |
0 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 |
0.0 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 |
false | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 |
'0' | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
array() | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
未宣言 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |
※1 empty0
/**
* 0以外の空判定
*
* @note
* いくつかの空値のうち、0と'0'は空と判定しない。
*
* @param $value
* @return int 判定結果 0:空でない , 1:空である
*/
function _empty0($value){
if(empty($value) && $value!==0 && $value!=='0'){
return 1;
}
return 0;
}