Is there a difference between isset and !empty. If I do this double boolean check, is it correct this way or redundant? and is there a shorter way
isset
!empty
It is not necessary.
No warning is generated if the variable does not exist. That means empty() is essentially the concise equivalent to !isset($var) || $var == false.
php.net