Почему $a + ++$a == 2?

Если я попробую это:

$a = 0;    
echo $a + ++$a, PHP_EOL;
echo $a;

Я получу следующий вывод:

2
1

Демо: http://codepad.org/ncVuJtJu

Почему так?

Я ожидаю получить это в качестве вывода:

1
1

Насколько я понимаю:

$a = 0;                    // a === 0    
echo $a + ++$a, PHP_EOL;   // (0) + (0+1) === 1
echo $a;                   // a === 1

Но почему это не вывод?

65
задан hakre 28 October 2012 в 16:29
поделиться