Hello Zeev, Thursday, July 24, 2003, 3:21:54 PM, you wrote:
ZS> zeev Thu Jul 24 09:21:54 2003 EDT ZS> Added files: ZS> /php-src/tests/lang foreach_with_references_001.phpt ZS> Log: ZS> Add foreach() test with references ZS> Index: php-src/tests/lang/foreach_with_references_001.phpt ZS> +++ php-src/tests/lang/foreach_with_references_001.phpt ZS> --TEST-- ZS> foreach() with references ZS> --FILE-- ZS> <?php $arr = array(1 =>> "one", 2 => "two", 3 => "three"); ZS> foreach($arr as $key => $val) { ZS> $val = $key; ZS> } ZS> print_r($arr); ZS> foreach($arr as $key => &$val) { ZS> $val = $key; ZS> } ZS> print_r($arr); ZS> --EXPECT-- ZS> Array ZS> ( ZS> [1] => one ZS> [2] => two ZS> [3] => three ZS> ) ZS> Array ZS> ( ZS> [1] => 1 ZS> [2] => 2 ZS> [3] => 3 ZS> ) WOW Coooooool :-) but there is one thing i wonder about: php -r '$ar=array(1=>"a",2=>"b",3=>"c");foreach($ar as $k=>&$v) if ($k==2) unset($v); print_r($ar);' Array ( [1] => a [2] => b [3] => c ) I guess the main question is what should happen? I'd expect the result to be $ar[2] = NULL since obviously you can't unset $ar[2] this way. (I tried this because in SPL you can). Best regards, Marcus mailto:[EMAIL PROTECTED] -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php