他の変数を代入

広告

変数には数値や文字列などの値を格納することもできますが、他の変数を格納することもできます。

$num1 = 320;
$num2 = $num1;

この場合、変数「num1」に格納されていた値がコピーされて変数「num2」に格納されます。よってどちらの変数にも「320」と言う数値が格納されています。

プログラミング言語によっては変数はあくまで名札であり、別の保管されている値に対する名札としての役割をする言語もあります。ただPHPにおける変数は、変数1つ1つが値を保管する場所を持っています。ある変数を他の変数に代入した時、PHPでは元の変数が持っていた値を複製して、格納先の変数に格納します。

では変数「num1」に別の値を格納してみます。

$num1 = 320;
$num2 = $num1;

$num1 = 45;

変数「num1」と変数「num2」はそれぞれ別の値を格納していましたので、変数「num1」の値をあとから変更しても変数「num2」が格納している値には影響しません。よって変数「num1」には「45」が格納されていますが、変数「num2」には「320」が格納されたままです。

サンプルコード

では簡単なプログラムで試して見ます。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPテスト</title>
</head>
<body>

<p>PHPのテストです。</p>

<p>
<?php
$num1 = 320;
$num2 = $num1;

print '$num1 ='.$num1.'<br />';
print '$num2 ='.$num2.'<br />';

$num1 = 18;

print '$num1 ='.$num1.'<br />';
print '$num2 ='.$num2;
?>
</p>

</body>
</html>

上記のファイルをWWWサーバのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。

他の変数を代入

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。