PHPでの値渡しと参照渡しの違いは何ですか

王林
リリース: 2023-02-28 18:00:02
転載
4270 人が閲覧しました

PHPでの値渡しと参照渡しの違いは何ですか

php 値の転送: 関数のスコープ内で変数値のサイズを変更しても、関数外の変数値には影響しません。

PHP 参照渡し: 参照渡しはメモリ アドレスを渡すため、関数スコープ内では、値への変更は関数の外側にも反映されます。

値の受け渡し:コピーと同じです。 [たとえば、私は家を持っています。私はあなたに建築資材をあげます。あなたは私と全く同じ家を建てます。あなたが家で何をしても私には影響しません。私が家で何をするかは私には影響しません。何もありません。相互に独立してあなたに影響を与えます。 】

(無料ビデオチュートリアル共有: php ビデオチュートリアル)

<?php  
$testa=1;        //定义变量a 
$testb=2;        //定义变量b  
$testb = $testa;    //变量a赋值给变量b  
echo $testb;      //显示为1  
?>
ログイン後にコピー

合格参考: C言語のポインタに似ており、感触もほぼ同じです。たとえば、私には家があります。私があなたに鍵を渡せば、私たち二人とも家に入ることができます。あなたが家の中で何をしても私に影響します。

<?php  
$param2=1;        //定义变量2  
$param1 = &$param2;   //将变量2的引用传给变量1  
echo $param2;      //显示为1  
$param1 = 2;       //把2赋值给变量1  
echo $param2;      //显示为2  
?>
ログイン後にコピー

[長所と短所:] 値の受け渡しは、特に大きな文字列やオブジェクトの場合、時間がかかります。これは、参照の転送や関数内のあらゆる操作など、非常にコストのかかる操作になります。変数の転送操作、大きな変数を転送する場合に効率的です!

おすすめの関連記事とチュートリアル: php チュートリアル

以上がPHPでの値渡しと参照渡しの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:jb51.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート