如何检查数组变量
$a = array('a'=>1, 'c'=>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');
在 PHP 中是否有可能具有检查 $a['c'] 是否为 null 以及 $a['b'] 是否存在而没有“PHP Notice: ...”错误的函数?
最佳答案
使用array_key_exists()
而不是 isset()
,因为如果变量为 null
,isset()
将返回 false
,而 array_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';
}
}
}
关于php - 检查数组值是否已设置且为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17767094/