次回より『ヒデログ』とご検索ください

【php初心者】3分で分かる参照渡しの使い方

phpにも他の言語と同様、「値渡し」と「参照渡し」があります。その違いを見ていきます。

値渡しと参照渡しの違い

まずは値渡しと参照渡しの違いを文章で説明し、そのあとプログラムで見てみます。

「値渡し」とは

値渡しは、その変数の「値」だけを渡します。ですので、それぞれの変数は独立して変数になります。

「参照渡し」とは

参照渡しは、渡された変数と渡した変数が一体となります。つまり、変数の名称は違えども、同じ値を格納する箱になります。参照渡しをする時は、渡す側の変数の前に「&」をつけます。

値渡しと参照渡しの違い

それではプログラムで見てみましょう。プログラムで見た方が分かりやすいです。

<?
$x=10; 
$y=$x; // $yに$xの「値」をわたす
$x=20;
print $y;// 10

$x=10;
$y=&$x; // $yに$xの「参照」をわたす。その時には変数の前に「&」をつける
$x=20; // $xの値を変えてみる
print $y; // 20 // $xと$yは「同じ値を格納する箱」になっているので$yの値も変わる
>

まとめ

phpにも他言語と同様に参照渡しがありました。そして参照渡しをする時は変数名の前に「&」をつけるということを紹介しました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です