$i = 1;
$sum = $i + ($i++);
また
$i = 1;
$sum = $i + $i + ($i++);
最終的には結果が得られますが、その$sum = 3
理由を誰が教えてくれますか?
これは php のテスト コードです。自分で実行するか、このリンクを直接クリックしてください: 実行結果を確認するデモ。
ここで、$i++ と ++$i が何をするかを明確に知っていることを述べたいと思います。そして、私が尋ねるこの質問は少し異なります。「結果リスト」を見てください。
$sum = $i + ($i++); //$sum = 3;
と
$sum = $i + $i + ($i++); //$sum = 3;
同じ結果になりました!!
私はコードがこのように書かれるべきであることを知っています.私は友人からこれを手に入れました.理由を説明することはできません.ここで明確な説明を求めてください.
// Result list
// $i = 1; //Result
// $sum = $i + ($i++); //3 2 (Look at this)
// $sum = $i + $i + ($i++); //3 2 (And this)
// $sum = $i + $i + $i + ($i++); //4 2
// $sum = $i + $i + $i + $i + ($i++); //5 2
// Test
$i = 1;
$sum = $i + ($i++);
echo "Result: ", $sum, " ", $i, "<br />";
$i = 1;
$sum = $i + $i + ($i++);
echo "Result: ", $sum, " ", $i, "<br />";
highlight_file(__FILE__);