ID:               20644
 Updated by:       [EMAIL PROTECTED]
 Reported By:      yury at krasu dot ru
-Status:           Open
+Status:           Closed
 Bug Type:         Documentation problem
 Operating System: all
 PHP Version:      4.3.0-dev
 New Comment:

This bug has been fixed in the documentation's XML sources. Since the
online and downloadable versions of the documentation need some time
to get updated, we would like to ask you to be a bit patient.

Thank you for the report, and for helping us make our documentation
better.

"Incrementing or decrementing booleans has no effect."


Previous Comments:
------------------------------------------------------------------------

[2003-01-25 13:28:39] [EMAIL PROTECTED]

compare this to

$a = "a";
$a = $a + 1;

and 

$a = "a";
$a = $a++;

++ is defined as increment, which may have different meanings on
different types

it is *not* defined as "is always the same as +=1 "

so it is definetly not a bug IHMO

the documentation issue is still valid 

------------------------------------------------------------------------

[2002-11-27 04:24:49] [EMAIL PROTECTED]

it's still not a bug, and there was some discussion about this on
php-dev or some other list a while ago..can't find that now thouhg, but
there was also "fix" for this, but it was reverted. (iirc)


------------------------------------------------------------------------

[2002-11-27 02:56:32] [EMAIL PROTECTED]

Please explain how this is to be documented (why this isn't a bug) as I
fail to understand the seemingly inconsistent behavior of this example:

$t = true;
$a = $t + 1; (same as $t += 1; // 2)
$b = ++$t;

print "a: $a b: $b"; // a: 2 b: 1

In otherwords, incrementing/decrementing a boolean keeps it as boolean
while adding an integer, such as 1, changes it to an integer.

Reclassifying as a scripting engine problem so php-dev gets this
report.  Please provide a documentable reason for this behavior.

------------------------------------------------------------------------

[2002-11-27 01:49:34] [EMAIL PROTECTED]

Reclassified.


------------------------------------------------------------------------

[2002-11-27 01:24:49] yury at krasu dot ru

it was really an user error, sorry.
i found than "++" operator doesn't make type conversion from boolean to
int, and if variable is boolean and equals TRUE than after ++ it remains
as TRUE, so

$a = TRUE; echo ($a++).$a;

produces output "11"
this behavior of increment operator was unexpected to me and i suppose
that it can be the same to others, so i wrote an user note at "type
juggling" part at online documentation

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/20644

-- 
Edit this bug report at http://bugs.php.net/?id=20644&edit=1

Reply via email to