今日、PHP 変数の分離と参照に関する Niao 兄弟の記事を読みましたが、理解できなかった問題がありましたので、最初にスクリーンショットをいくつか投稿します。
上記のステートメントに従う場合は、次のようにコードを少し変更します:
リーリー
それでは
コードの 2 行目: $var_dup と $var は、refcount が 2 の同じ zval を指します。
3行目を実行すると: PHPは、操作対象のzvalのrefcountが1より大きいことを検出すると、PHPはSeparationを実行し、$var_dupを分離し、$varと$var_refを書き込み時の変更に関連付けます。つまり、refcount=2、is_ref=1;
4行目に進むと、 $varと$var_refが指すzvalはis_ref=1;なので分離されず、$var_refと$varの値は両方とも「OK」になります「。
」
参考のために小さな栗を2つ添付します:
リーリー リーリー