Перевірте наявність змінних у PHP / JS

При щоденній роботі зі змінними в PHP та JavaScript часто трапляється запит, чи порожня змінна. Для перевірки варто знати власні функції та їх відмінності. Прикро, що немає простого способу інтуїтивно перевірити, чи є змінна чи ні. Наведена нижче матриця уточнює, що мається на увазі під цим. Однак те, що ви хочете, можна модернізувати за допомогою невеликих допоміжних функцій.


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

Впровадження __x:

740550c6b3d2b9ae03e4d220eb08e6e3

Допоміжна функція __x викликається за допомогою оператора контролю помилок @, що зазвичай не рекомендується, щоб мати можливість перевіряти раніше невизначені змінні.

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

Впровадження __x:

740550c6b3d2b9ae03e4d220eb08e6e3

Назад