#24300 [Opn]: Itterative variable not editable in a for loop

From: Date: Mon, 23 Jun 2003 19:41:12 +0000
Subject: #24300 [Opn]: Itterative variable not editable in a for loop
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-42373@lists.php.net to get a copy of this message
ID: 24300 User updated by: chris at chrisseaton dot com Reported By: chris at chrisseaton dot com Status: Open Bug Type: Scripting Engine problem Operating System: Linux PHP Version: 4.3.2 New Comment: Eratta: Obviously, I mean "if ($n == 2)" Previous Comments: ------------------------------------------------------------------------ [2003-06-23 14:36:56] chris at chrisseaton dot com Description: ------------ If you are in a "for" loop you can't modify the itterative variable. PHP seems to revert it the value at the start of the itteration. This is standard behaviour for both C and Java. The PHP documentation does not forbid this, and the syntax suggests it is possible, so I assume this is a bug and not a design decision. Reproduce code: --------------- for ($n = 0; $n < 4; $n++) { print("$n\n"); if ($n = 2) $n = 4; } Expected result: ---------------- 0 1 2 Actual result: -------------- 0 1 2 3 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=24300&edit=1

« previous php.bugs (#42373) next »