It always seems impossible until it is done.
PHP isset() vs empty() vs is_null() vs if($var) vs ??
See blog article for explanation.
PHP version is 8.3.19
| Value of variable ($var) | isset($var) | empty($var) | is_null($var) | if($var) | $var ?? '-' Null Coalesce Operator (since PHP 7.0) |
|---|---|---|---|---|---|
| '' (an empty string) | bool(true) | bool(true) | bool(false) | false | string(0) "" |
| " " (space) | bool(true) | bool(false) | bool(false) | true | string(1) " " |
| " " (two spaces) | bool(true) | bool(false) | bool(false) | true | string(2) " " |
| false | bool(true) | bool(true) | bool(false) | false | bool(false) |
| FALSE | bool(true) | bool(true) | bool(false) | false | bool(false) |
| true | bool(true) | bool(false) | bool(false) | true | bool(true) |
| TRUE | bool(true) | bool(false) | bool(false) | true | bool(true) |
| array() (an empty array) | bool(true) | bool(true) | bool(false) | false | array(0) { } |
| new stdClass() (an empty object) | bool(true) | bool(false) | bool(false) | true | object(stdClass)#140 (0) { } |
| NULL | bool(false) | bool(true) | bool(true) | false | string(1) "-" |
| "0" (0 as a string) | bool(true) | bool(true) | bool(false) | false | string(1) "0" |
| 0 (0 as an integer) | bool(true) | bool(true) | bool(false) | false | int(0) |
| 0.0 (0 as a float) | bool(true) | bool(true) | bool(false) | false | float(0) |
| var $var; (a variable declared, but without a value) | bool(false) | bool(true) | bool(true) | false | string(1) "-" |
| NULL byte ("\0") | bool(true) | bool(false) | bool(false) | true | string(1) " " |
Neueste Kommentare