#24396 [Com]: foreach ($k=>$v), the key $k is missing

From: Date: Mon, 30 Jun 2003 13:46:56 +0000
Subject: #24396 [Com]: foreach ($k=>$v), the key $k is missing
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-42858@lists.php.net to get a copy of this message
ID: 24396 Comment by: sniper at iki dot fi Reported By: jlim at natsoft dot com Status: Open Bug Type: Scripting Engine problem Operating System: Windows XP PHP Version: 5.0.0b1 (beta1) New Comment: <?php $arr = array('a' => 1, 'b' => 2, 'c' => 3); echo PHP_VERSION."<br>"; print_r($arr); foreach($arr as $k=>$v) { global $$k; // comment this out and it works in PHP 5 too.. print " ($k=>$v) "; $$k = $v; } Previous Comments: ------------------------------------------------------------------------ [2003-06-30 05:48:29] sniper@php.net 4.3.3RC2-dev Array ( [a] => 1 [b] => 2 [c] => 3 ) (a=>1) (b=>2) (c=>3) (just checked that this is just 5.0.0b1 issue) ------------------------------------------------------------------------ [2003-06-29 23:48:26] jlim at natsoft dot com Description: ------------ The following script below fails (missing $k). Reproduce code: --------------- <?php error_reporting(E_ALL); echo PHP_VERSION."<br>"; print_r($_GET); foreach($_GET as $k=>$v) { global $$k; print " ($k=>$v) "; $$k = $v; } ?> Expected result: ---------------- 5.0.0b1 Array ( [a] => 1 [b] => 2 [c] => 3 ) (a=>1) (b=>2) (c=>3) Actual result: -------------- 5.0.0b1 Array ( [a] => 1 [b] => 2 [c] => 3 ) (=>1) (=>2) (=>3) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=24396&edit=1

« previous php.bugs (#42858) next »