最初にインタビューの質問を見てみましょう:
$a = 1; $b = &$a; if ($b == $a++) echo "true"; else echo "false";
次に、変数 $b を作成し、それを $a の値として使用します。
最後の判定ステートメントには、POST_INC と IS_EQUAL という 2 つのオペコードが含まれています。最初に実行するのは、return first、increment ステートメント (POST_INC) です。これは、$b は $a への参照であり、$b も 2 であるため、最初に 1 を返し、次に $a が 2 にインクリメントされます。次に、比較ステートメント (IS_EQUAL) が実行されます。これは、$b の値が 2 で、$a++ の戻り値が 1 であるため、これらは等しくありません。
同様の面接の質問は次のとおりです:
$a = 1; $b = &$a; $b = $a++; echo "a: $a; b: $b";