Array references - how to unset() ?
| From: | Martin Zvarík | Date: | Wed, 02 Sep 2009 22:28:58 +0000 |
| Subject: | Array references - how to unset() ? | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-297613@lists.php.net to get a copy of this message | ||
$ARR = array(
'a' => array('b' => 'blah')
);
function set($key)
{
global $ARR;
foreach ($key as $i => $k) {
if ($i == 0) {
$sourcevar =& $ARR[$k];
} else {
$sourcevar =& $sourcevar[$k];
}
}
// unset($sourcevar); // will cancel the reference - we want to unset the ['b'], but how?$sourcevar = null; // will set it NULL, but won't unset... foreach ($ARR ... // I could run a cleanup, that would go through all of the array and unset what is NULL, but I would need to use REFERENCES again!! array_walk_recursive() is also worthless... any ideas? } set( array('a', 'b') );