PHP - Checking if array index exist or is null
66,371
Solution 1
The function array_key_exists() can do that, and property_exists() for objects, plus what Vineet1982 said. Thanks for your help.
Solution 2
This is the very good question and you can use get_defined_vars() for this:
$foo = NULL;
$a = get_defined_vars();
if (array_key_exists('def', $a)) {
// Should evaluate to FALSE
};
if (array_key_exists('foo', $a)) {
// Should evaluate to TRUE
};
This will solve your problem
Solution 3
Simplest defined in: http://php.net/manual/en/function.array-key-exists.php
<?php
$array=array('raja'=>'value', 'john'=>'value2');
$var='raja';
echo array_key_exists($var, $array);
?>
Author by
Virus721
Updated on November 07, 2020Comments
-
Virus721 over 3 years
Is there a way to check if an array index exists or is null?
isset()
doesn't tell you whether the index doesn't exist or exists but is null. If I do :isset($array[$index]) || is_null($array[$index])
it won't work because if the index doesn't exist is_null will crash.How can I check this please? Also is there a way to check only if something exist, no matter if it is set to null or not?
-
Virus721 about 11 yearsOk but add the array_key_exist thing in it then
-
Asish over 3 yearsUsing array_key_exists() on objects is deprecated.
-
Virus721 over 3 years@Asish No one said one should do that. And this question is 8 years old, so obviously things evolve.
-
Asish over 3 yearsYes. That is why I mentioned it. And it didn't work in my case. So,..
-
Dave S about 2 yearsThis answer is still valid in 2022. array_key_exists for arrays (not objects), property_exists for objects.