Unset group of variables [duplicate]

2019-07-19 01:52发布

问题:

Possible Duplicate:
Can you unset() many variables at once in PHP?

$var1 = $var2 = $tvar3 = null;

Is it okay to remove variables like this?

Are there better ways to unset couple of variables?

回答1:

unset() is variadic (i.e. it takes any number of arguments and unsets them all):

unset($var1, $var2, $var3);

Also note that unset() is not the same as setting to NULL. Using unset() you actually remove the variables, whereas setting them to NULL keeps them defined, just with a "value" of NULL. Doing it either way causes isset() to return false on those variables, but they're still semantically and technically different.

Here's a quick proof:

<?php

$x = NULL;
var_dump(array_key_exists('x', $GLOBALS)); // bool(true)

unset($x);
var_dump(array_key_exists('x', $GLOBALS)); // bool(false)

?>