Bug #16697 Updated: %= operator
| From: | tal@php.net | Date: | Fri, 19 Apr 2002 20:00:36 +0000 |
| Subject: | Bug #16697 Updated: %= operator | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-5427@lists.php.net to get a copy of this message | ||
ID: 16697
Updated by: tal@php.net
Reported By: spagnoli@dualservice.it
-Status: Open
+Status: Bogus
Bug Type: *Math Functions
Operating System: Linux
PHP Version: 4.0CVS-2002-04-19
New Comment:
Not a bug > bogus.
$a = ++$b = 1 is meaningless, you cannot assign values to ++$b or
$b++.
-Tal
Previous Comments:
------------------------------------------------------------------------
[2002-04-19 08:04:01] spagnoli@dualservice.it
I've tried a trick I often use in C++; the PHP syntax should be
identical:
$a=0;
while ([condition]) {
$mystring= ++$a%=8 ? "A" : "B";
[...]
}
the value of $mystring should be "B" seven times and then "A" once,
keeping the value of $a in the range [0..7].
If $a is useless for other purposes, the following gives the same
result:
$a=0;
while ([condition]) {
$mystring= ++$a%8 ? "A" : "B";
[...]
}
whith two differences:
$a is no loger necessarily in the range [0..7] and, above all, tha
latter works, but tha former doesn't!
I've tried to parse "++$a" writing
$mystring= (++$a)%=8 ? "A" : "B";
but it doesn't work.
Since this problem is related to operators, I don't think you need
information about my modules or my system, but if I'm wrong ask me for
that.
Thank you.
Regards,
Davide Spagnoli
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16697&edit=1