私の同僚の 1 人が、次のような投稿をしました。
PHP では、同じ値を参照する 2 つの変数がある場合、それらは同じインスタンスです。
$a="Mary";
$b="Mary";
$c="lamb"
彼は、$a と $b が同じインスタンス (メモリ空間) を参照していることを暗示しています。私はこれを信じるのに苦労しています。これはJavaではある程度当てはまることは知っていますが、phpではそうではないと思います.phpでは文字列は原則として実際には不変ではないため、1つのインスタンスを持つことは意味がありません
さらに、それを行うunset($a)
と、実際の値ではなく $a の参照のみが削除されると彼は言いました。これはもちろん真実ですが、何も証明していません
次のコードも試して、$a と $b の両方を出力しました。同じインスタンスを共有している場合、$b の値も変更されます。
$a[2]=3;
echo "<br/>\$a: $a<br/>"; //He3lo
echo "<br/>\$b: $b<br/>";//Hello
変数のメモリ空間をチェックしたいのですが、php ではそれができないと思います。これが本当かどうか誰かが明らかにできますか