Check if array value isset and is null

arrays, isnull, isset, php

Solution

Use `array_key_exists()` instead of `isset()`, because `isset()` will return `false` if the variable is `null`, whereas `array_key_exists()` just checks if the key exists in the array:

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

Problem

How to check if array variable ``` $a = array('a'=>1, 'c'=>null); ``` is set and is 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'); ``` Is it possible in PHP to have function which will check if $a['c'] is null and if $a['b'] exist without "PHP Notice: ..." errors?

Original source

Related problems