Controleer variabelen in PHP / JS op bestaan

Wanneer je dagelijks met variabelen in PHP en JavaScript werkt, kom je vaak de vraag tegen of een variabele leeg is. Het is de moeite waard om de native functies en hun verschillen te kennen voor controledoeleinden. Vervelend is dat er geen gemakkelijke manier is om intuïtief te controleren of een variabele aanwezig is of niet. Onderstaande matrix maakt duidelijk wat hiermee bedoeld wordt. Wat u wilt, kan echter achteraf worden aangebracht met behulp van kleine hulpfuncties.


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

Implementatie van __x:

740550c6b3d2b9ae03e4d220eb08e6e3

De helperfunctie __x wordt aangeroepen met de foutcontrole-operator @, wat meestal niet wordt aanbevolen, om ook voorheen ongedefinieerde variabelen te kunnen controleren.

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

Implementatie van __x:

740550c6b3d2b9ae03e4d220eb08e6e3

Terug