Kur punoni me variabla në PHP dhe JavaScript në baza ditore, shpesh ndeshet me pyetjen nëse një variabël është bosh. Vlen të njihen funksionet vendase dhe ndryshimet e tyre për qëllime kontrolli. Për bezdi, nuk ka asnjë mënyrë të thjeshtë për të kontrolluar intuitivisht nëse një variabël është e pranishme apo jo. Matrica më poshtë sqaron se çfarë nënkuptohet me këtë. Sidoqoftë, ajo që dëshironi mund të rindërtohet duke përdorur funksione të vogla ndihmëse.
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 |
Zbatimi i __x:
740550c6b3d2b9ae03e4d220eb08e6e3
Funksioni ndihmës __x thirret me operatorin e kontrollit të gabimit @, i cili zakonisht nuk rekomandohet, në mënyrë që gjithashtu të jetë në gjendje të kontrollojë variablat e papërcaktuar më parë.
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 |
Zbatimi i __x:
740550c6b3d2b9ae03e4d220eb08e6e3