考虑这两个例子…
$key = 'jim'; // example 1 if (isset($array[$key])) { // ... } // example 2 if (array_key_exists($key, $array)) { // ... }
我很想知道这些方法是否更好。我一直使用第一个示例,但是看到很多人在此站点上使用第二个示例。
那么,哪个更好?快点?意图更清晰?
isset()速度更快,但与并不相同array_key_exists()。
isset()
array_key_exists()
array_key_exists()即使值是,也仅检查密钥是否存在NULL。
NULL
而 isset()将返回false如果该键存在和价值NULL。
false