Czy ktoś może wyjaśnić, dlaczego te 2 dają taki sam wynik?php sam wynik dodając inną liczbę vars
$a = 1;
$c = $a + $a++;
var_dump($c);//int(3)
i
$a = 1;
$c = $a + $a + $a++;
var_dump($c);//int(3)
Testowane PHP 7.1. Zrewidowane zrzuty Opcji dla obu przypadków, ale wciąż nie mogę tego zrozumieć. Jeśli dodamy więcej $ vars do wyrażenia, wynik będzie oczekiwany.
I może wskazywać, że jest podobny do tego 'var_dump ((int) ((0.1 + 0.7) * 10)); // int (7)' ([a problem precyzji pływaka] (http://titanic.fauser.edu/php/lang uage.types.float.php.htm # warn.float-precision)). Ale naprawdę nie wiem. –
Zobacz także https://3v4l.org/3bWI0 – bishop
Zostało to wyjaśnione tutaj: https://gist.github.com/nikic/6699370 Prawdopodobnie istnieje również jeden lub dziesięć duplikatów na SO. – NikiC