このPHPコードの出力はです33
。
$b=2;
$a=&$b;
$a=3;
print $a;
print $b;
どのようにし$b
て3になりましたか?
記憶の場所$a
を指しているように。$b
これで、値を変更$a
すると、実際に$b
値が更新されます($b
が保存されている場所)。両方が同じメモリ位置を指しているため。
または、に参照を割り当てたのと同じメモリ位置にアクセスするための2つの異なる方法である$a
と言うことができます。$b
$b
$a
上の画像からわかるように、変数の参照を別の変数に割り当てると、両方が同じ場所を指すため、一方が行った変更はもう一方にも反映されます。
ありがとう
「$bのアドレスを$aに格納し、その後$ aが変更されたため、$ bのアドレスの値が変更され、$bも変更されました。
参照を作成$a
し$b
、同じ変数の2つの名前になったら。
参照: http: //php.net/manual/en/language.references.php(具体的にはリストの最初の記事)
$a=&$b;
この行は、「これからは$ b、あなたも$aです」と言っているようなものです。
print $a; // prints 3
print $b; // prints another 3