PHP, Ruby の null, blank 判定比較早見表
値 | nil? | empty? | blank? | isset | is_null | empty | if($var) | ||
---|---|---|---|---|---|---|---|---|---|
未定義 | false | ||||||||
$var = nil, null | TRUE | TRUE | false | TRUE | TRUE | false | |||
$var = true | false | false | TRUE | false | false | TRUE | |||
$var = false | false | TRUE | TRUE | false | TRUE | false | |||
$var = [] | false | TRUE | TRUE | TRUE | false | TRUE | false | ||
$var = [1] | false | false | false | TRUE | false | false | TRUE | ||
$var = "" | false | TRUE | TRUE | TRUE | false | TRUE | false | ||
$var = " " | false | false | TRUE | TRUE | false | false | TRUE | ||
$var = 0 | false | false | TRUE | false | TRUE | false | |||
$var = 1 | false | false | TRUE | false | false | TRUE | |||
$var = "0" | false | false | false | TRUE | false | TRUE | false | ||
$var = "1" | false | false | false | TRUE | false | false | TRUE |
present?
は!blank?
と同義なので省略
nil?
とis_null
の違いはなし
Ruby#empty?
とPHP#empty
は数値判定に誤差がある
PHPにblank?
に当たる関数はないが、やはりempty
とは数値判定に誤差がある
引用