Seems the order or left vs right assignment evaluation has changed somehow
recently in my upgrade to PHP 5.1.4. See the following code:
That's is indeed a quirk of a change in the way variables are
retreived/stored between 5.0 and 5.1.
Is it an unexpected BC break? In functional terms yes, but technically no.
As mike already replied, using the same var more than once in a single
expression where the value of the variable is expected to change is (and has
always been) considered "undefined behavior". I'd recommend changing your
statement to:
$data[$index] = $index;
++$index;
And before you complain about the "extra work" for the engine, let me just
mention this is still lighter weight than what 5.0 and 4.x were doing.
-Sara
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php