Kontroller variabler i PHP / JS for eksistens

Når man arbejder med variabler i PHP og JavaScript dagligt, kommer man ofte på tværs af forespørgslen, om en variabel er tom. Det er værd at kende de oprindelige funktioner og deres forskelle til kontrolformål. Irriterende er der ingen nem måde at intuitivt kontrollere, om en variabel er til stede eller ej. Matrixen nedenfor præciserer, hvad der menes med dette. Det, du ønsker, kan dog eftermonteres ved hjælp af små hjælperfunktioner.


PHP

  === null == null is_null isset empty if/else ternary count > 0 == '' === '' @__x
$a true true true false true false false false true false false
null true true true false true false false false true false false
[] false true false true true false false false false false false
0 false true false true true false false true true false true
1 false false false true false true true true false false true
-1 false false false true false true true true false false true
'' false true false true true false false true true true false
' ' false false false true false true true true false false false
str false false false true false true true true false false true
[0,1] false false false true false true true true false false true
[0] false false false true false true true true false false true
new stdClass() false false false true false true true true false false false

Implementering af __x:

740550c6b3d2b9ae03e4d220eb08e6e3

Hjælperfunktionen __x kaldes med fejlkontroloperatøren @, som normalt ikke anbefales, for også at kunne kontrollere tidligere udefinerede variabler.

JavaScript

  === null == null typeof input === 'undefined' if/else ternary length > 0 == '' === '' __x
$a false true true false false type error false false false
null true true false false false type error false false false
[] false false false true true false true false false
0 false false false false false false true false true
1 false false false true true false false false true
-1 false false false true true false false false true
'' false false false false false false true true false
' ' false false false true true true false false false
str false false false true true true false false true
[0,1] false false false true true true false false true
[0] false false false true true true false false true
new Object() false false false true true false false false false

Implementering af __x:

740550c6b3d2b9ae03e4d220eb08e6e3

Tilbage