isset()は次を返し
ます:
------true if the key exists and the value is != NULL
false if the key exists and value == NULL
false if the key does not exist
array_key_exists()は次を返します
:
--true if the key exists
false if the key does not exist
したがって、値がNULLの場合、適切な方法はarray_key_exists
です。アプリケーションがNULLとキーなしを区別しない場合、どちらも機能しますが、array_key_exists
常により多くのオプションを提供します。
次の例では、配列内のどのキーもNULLを返しませんが、特定のキーのNULLの値も返します。つまり、実質的にはと同じisset
です。
null合体演算子(??)はPHP 7まで追加されませんでしたが、これはPHP 5、おそらく4に戻ります。
$value = (array_key_exists($key_to_check, $things) ? $things[$key_to_check] : NULL);
関数として:
function get_from_array($key_to_check, $things)
return (array_key_exists($key_to_check,$things) ? $things[$key_to_check] : NULL);