I prefer to develop with E_NOTICES turned on, but I often have to write excess, overly verbose, code when working with array indexes. How can I write this code in less code with E_NOTICES enabled.
With notices suppressed
if ($_REQUEST['some_key'] == 'bob')
{
}
Without notices suppressed
if (array_key_exists('some_key', $_REQUEST) && $_REQUEST['some_key'] == 'bob')
{
}
I generally use isset()
, instead of array_key_exists()
, for that kind of thing ; which means using something like this :
if (isset($_REQUEST['some_key']) && $_REQUEST['some_key'] == 'bob')
{
}
A couple of differences :
isset
is a language construct, and not a function -- and its faster (no function call)isset
will return false
if a data is null
; array_key_exists
will return true
if (isset($_REQUEST['a'], $_REQUEST['b'], $_REQUEST['c'])
, if necessary