例えば、下記のコードの場合、
<?php
$a['test'] = null;
var_dump(isset($a['test']));
結果はfalseになる。
bool(false)
配列の要素の値にnullが入る可能性があるときは、array_key_exists()を使ったほうがいいかもしれない🤔
<?php
$a['test'] = null;
// var_dump(isset($a['test']));
var_dump(array_key_exists('test', $a));
bool(true)
ってマニュアルに書いてあるやん😅
PHP: isset - Manual
PHP is a popular general-purpose scripting language that powers everything from your blog to the most popular websites i...
$a = array (‘test’ => 1, ‘hello’ => NULL, ‘pie’ => array(‘a’ => ‘apple’));
var_dump(isset($a[‘test’])); // TRUE
var_dump(isset($a[‘foo’])); // FALSE
var_dump(isset($a[‘hello’])); // FALSE// キー ‘hello’ は NULL と等しいのでセットされていないと見なされる。
https://www.php.net/manual/ja/function.isset.php
// もし NULL なキー値に対してチェックを行いたい場合、次を試してみること:
var_dump(array_key_exists(‘hello’, $a)); // TRUE