PHP ブラウザに出力
font-size:12px;line-height: 150%;
<?php
$a = 3;
$b = 6;
$c = $a++;
$d = ++$b;
$e = $c + $d;
print ' 変数の値は '.$e.' です。 ' ;
この答えは、一見11に見えがちですが。。。
実際の答え↓
10!!!!!
(解説/ポイント)
これは、後置加算子、前置加算子によるものです。
上記の図からわかるように、
左側にくる++は、それだけで1足されていることがわかる。
一方右側にくる++は、「$aを返し、$aに1を加える」すなわち、
「ただの記号に過ぎない」という解釈が出来ます!!
これはfor文で使われるi++のようなもので、
計算式では成り立つが、それ自体が計算される、という機能は持っていないのです。
よって、
$c = $a++; は、 3
$d = ++$b; は、 7
$e = $c + $d; は、 10となる訳です!!