Test it yourself...it's a great way to really learn things. 🙂
<?php
$test = array(
'',
'x',
0,
0.0,
1.123,
'0',
false,
true,
null
);
echo "Test Data:".PHP_EOL.var_export($test,1).PHP_EOL;
for($i = 0; $i <= count($test); $i++) // intentionally going 1 past end of array
{
$set = isset($test[$i]);
$empty = empty($test[$i]);
echo "$i - isset: ".var_export($set, 1).", empty: ".var_export($empty, 1).PHP_EOL;
}
Output:
09:45 $ php isset_or_empty.php
Test Data:
array (
0 => '',
1 => 'x',
2 => 0,
3 => 0,
4 => 1.123,
5 => '0',
6 => false,
7 => true,
8 => NULL,
)
0 - isset: true, empty: true
1 - isset: true, empty: false
2 - isset: true, empty: true
3 - isset: true, empty: true
4 - isset: true, empty: false
5 - isset: true, empty: true
6 - isset: true, empty: true
7 - isset: true, empty: false
8 - isset: false, empty: true
9 - isset: false, empty: true