値の受け渡しと参照の受け渡しについては、本の説明は比較的面倒ですが、PHP のインタビューでは必ず出てきます。以下では、値の受け渡しと参照の受け渡しの違いを理解するのに役立つ例を使用します。彼ら。
ステップ 1
部屋を予約するためにホテルに行くとします。ホテルの番地を変数名と比較し、変数名に含まれる人数を使用します。部屋を変数名として代入するプロセス
<?php $k1=2;//$k1号房间住了2个人 $k2=$k1;//恰巧今天$k1号房间维修,把$k1号房间的人放到$k2房间里面 $k1=10;//假设$k1维修好了,又住进10个人,那么这就是值传递。 echo "$k1号房间:".$k1."个人";//10 echo "$k2号房间:".$k2."个人";//1 ?>
値の転送の特徴:
1. 値の等価性
つまり、$k1 から $k2 まで、その部屋にいる人々は平等です。
2. 相互独立性と相互影響なし
つまり、私の $k1 ルームのゲストの数と私の $ のゲストの数k2ルームはお互いに影響しません。これは「異なる方法は連携しない」と呼ばれます。
2 番目のステップ
上記の例で、私たちの部屋 $k1 が、理解するために 2 つの番地 $k1 と $k2 を持つ保守作業員によって電話を切られていると仮定します
<?php $k1=2;//$k1号房间住了2个人 $k2=&$k1;//恰巧今天$k1号房间挂上"$k1"和“$k2”两个门牌号 $k1=10;//假设$k1又住进10个人,那么这就是引用传递。 echo "$k1号房间:".$k1."个人";//10 echo "$k2号房间:".$k2."个人";//10因为门牌$k1房间的客人就是门牌$k2里面的客人 ?>
参照渡しの特徴:
相互影響、つまり、$k1 に何人のゲストが来て、何人のゲストが $k2 に表示されるか。 「ロープに縛られたバッタ」と呼ばれています。
違い
1. 使用法の違い
値によって渡されるシンボルは =
です。引用符 転送記号は &
2 です。意味の違い
値転送は変数が互いに影響を与えずに転送されることを意味し、参照転送は 2 つの変数がポイントすることを意味します同じ空間にいて、お互いに影響を与え合います。
推奨チュートリアル: PHP ビデオ チュートリアル
以上がPHPリファレンスとコピーの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。