Re: $i++ problem understanding
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


comp.lang.php archive

Re: $i++ problem understanding

From: Zilla <mail.is.not@an.option>
Date: Wed Oct 05 2005 - 14:39:53 CEST

Pugi! wrote:
[snip]
> But much harder to accept is and I fail to see the logic in it,
> is the following :
> $i = 1;
> print($i++);
> This will print 1 and only afterward will the value of $i be increased
> by 1. It is between (), so logic tells me first $i++ and then print.
[snip]

print is a language construct, not actually a function. That means that
the parentheses are optional. So the following two lines produces the
same result:

print "Hello World";
print("Hello World");

So in your example the parentheses don't have a meaning in the
mathematical sense of doing whats inside them first, which in php only
works when you are calculating something as in:

$number = (3 + 5) * 7;

where $number is 56 (8 * 7). That is why $i in your example is still
post-incremented, that is, after you have printed it.

Hope you understand me.
Zilla.

PS.: Btw, you can pre-increment with ++$i
Received on Tue Oct 18 02:32:12 2005