检查数组值是否设置为null

Bar*_*osa 18 php arrays isnull isset

如何检查数组变量

$a = array('a'=>1, 'c'=>null);
Run Code Online (Sandbox Code Playgroud)

已设置且为null.

function check($array, $key)
{
    if (isset($array[$key])) {
        if (is_null($array[$key])) {
            echo $key . ' is null';
        }
        echo $key . ' is set';
    }
}

check($a, 'a');
check($a, 'b');
check($a, 'c');
Run Code Online (Sandbox Code Playgroud)

是否有可能在PHP中具有检查$ a ['c']是否为空的函数以及如果$ a ['b']存在而没有"PHP Notice:..."错误?

nic*_*ckb 43

使用array_key_exists()而不是isset(),因为如果变量是,则isset()返回,而只是检查数组中是否存在键:falsenullarray_key_exists()

function check($array, $key)
{
    if(array_key_exists($key, $array)) {
        if (is_null($array[$key])) {
            echo $key . ' is null';
        } else {
            echo $key . ' is set';
        }
    }
}
Run Code Online (Sandbox Code Playgroud)