Re: Array references - how to unset() ?

From: Date: Wed, 02 Sep 2009 22:43:13 +0000
Subject: Re: Array references - how to unset() ?
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-297614@lists.php.net to get a copy of this message
Martin Zvarík wrote:
$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') );
unset( $ARR[$k] ) Cheers, Rob. -- http://www.interjinn.com Application and Templating Framework for PHP

« previous php.general (#297614) next »