【初心者向け PHP 入門】変数の特性と応用:再代入、自己代入、複合代入演算子などを解説
投稿日:
PHPの計算以外の様々な変数の使い方を解説します。
変数の再代入
$x = 15; $x = 20; //$xの中身は20
このように2回代入すると1番最後に処理された文が適応されます。
再計算や初期値に戻す、などの処理を行いたい場合に有効です。

ルナリス
値をリセットしたいときによく使うわ
変数自身を代入(自己代入)
自分自身を使って行う変数の計算は「自己代入(self-assignment)」と呼びます。
$x = 3; $x = $x +5; //$xの中身は8
このように自身の値を計算に使用することができます。
+以外にも、−, *, /, % などの演算子で有効です。
上記の書き方は省略なしの正しい書き方となりますが、
PHPでは複合代入演算子を使用することで少し短い文章で記述できます。
複合代入演算子
複合代入演算子 | 意味 | 例 | 省略無しの書き方 |
---|---|---|---|
+= | 足し算を行い代入 | $x += 2; | $x = $x + 2; |
−= | 引き算を行い代入 | $x −= 2; | $x = $x − 2; |
*= | 掛け算を行い代入 | $x *= 2; | $x = $x * 2; |
/= | 割り算を行い代入 | $x /= 2; | $x = $x / 2; |
%= | 余りを求めて代入 | $x %= 2; | $x = $x % 2; |
このように数文字省略できますが、省略無しで書くのは間違いではありません。
まずは省略無しで覚え、プログラミングに慣れてから複合代入演算子で省略すると良いと思います。

ルナリス
まずは普通の変数の計算を覚えましょう
加算子/減算子 カウンタ変数
何か処理を行なった際に、変数を+1や−1することによって、処理した回数を数えることが出来ます。
このように処理の回数を数える変数をカウンタ変数と呼びます。
PHPには+1や-1を簡単に行う方法があります。
それが加算子と減算子です。
記述例 | 名称 | 意味 |
---|---|---|
++count | 前置加算子 | countを+1した結果を返し、countを+1する |
count++ | 後置加算子 | countを返し、countを+1する |
−−count | 前置減算子 | countを−1した結果を返し、countを−1する |
count−− | 後置減算子 | countを返し、countを−1する |
全く何を言ってるか分からないと思いますので、それぞれの実行例を載せます。
//前置加算子の例 $count = 0; //$countの初期化 echo ++$count; //1が表示 echo $count; //1が表示 //後置加算子の例 $count = 0; //$countの初期化 echo $count++; //0が表示 echo $count; //1が表示 //前置減算子の例 $count = 0; //$countの初期化 echo --$count; //-1が表示 echo $count; //-1が表示 //後置減算子の例 $count = 0; //$countの初期化 echo $count--; //0が表示 echo $count; //-1が表示
実行が終わる前に表示するとそれぞれ結果が違うことが分かります。
しかし、計算途中で結果を表示することはほとんどありません。
後置加算子「$x++」と後置減算子「$x−−」の2つだけ覚えていれば問題ありません。
結果を表示したい場合も、下記のように1テンポ置いて表示すると良いです。
//++の例 $n = 0; //$nの初期化 $n++; echo $n; //1が表示 //--の例 $n = 0; //$nの初期化 $n--; echo $n; //-1が表示
このように処理を終わらせてから表示させることで「++」と「−−」を前と後どちらに置けば良いか迷うことはありません。
基本的には後に置くと良いでしょう。

ルナリス
「$x++」は1が増え、「$x−−」は1減るのを覚えていればOKよ
まとめ
変数の使い方や演算子の使い方などを説明しました。
単純な計算は分かるけど、この書き方はどういった意味なんだろうと悩んだ方はぜひこのページを見直してみて下さい。
コメント一覧