My Code:
$a = [];
isset($a[0]) and unset($a[0]);
it shows "syntax error, unexpected 'unset' (T_UNSET)"
but
$a = [];
isset($a[0]) and exit();
it works!
Both of exit() and unset() are returning no value. Why does one work but not the other?
My Code:
$a = [];
isset($a[0]) and unset($a[0]);
it shows "syntax error, unexpected 'unset' (T_UNSET)"
but
$a = [];
isset($a[0]) and exit();
it works!
Both of exit() and unset() are returning no value. Why does one work but not the other?
unset is a language construct, not a real function (this is why you get T_UNSET and not a more generic term), so it doesn't play by the same rules as a normal function would. isset and exit are also language constructs, but they behave more like normal functions.
As I asked in comments and you said you want to delete a value from Array,
Why not simply write
$a = [];
if(isset($a[0])){
unset($a[0]);
// And exit() if you want to
}