检查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

背部