カウンター変数

while文やfor文などの反復構造で、繰り返しを制御する変数をカウンター変数などと呼びます。カウンター変数には$iという名前を付けることが一般的です。

$iはIndex(索引)やInteger(整数)などが語源であると言われています。

またプログラムが複雑になってくると、for文の反復処理{}の中でさらにfor文を使うケースもあります。次のプログラム(loop5.php)を作成してみましょう。

<?php
for ($i = 1; $i <= 3; $i++) {
  for ($j = 1; $j <= 3; $j++) {
    echo $i * $j;
    echo " ";
  }
  echo PHP_EOL;
}

外側のfor文ではカウンター変数に$iを定義して、条件式$i <= 3が成立する間、処理{}を繰り返すようにしています。内側のfor文も同様に変数$jを定義して、条件式$j <= 3が成立する間、処理{}を繰り返すようにしています。

for文がネストする場合カウンター変数の名前は$i, $j, $kという名前を順に使うようにします。

プログラムを実行してみましょう。

$ php loop5.php
1 2 3
2 4 6
3 6 9

変数$iと変数$jの積が出力されているのがわかります。

while文とfor文、どちらを使うべきか

以降は配列を扱うようなケースで頻繁に反復構造を扱うことになります。その際、while文やfor文どちらを使ってもプログラミングすることは可能です。ここで見てきたようにfor文を使えばwhile文を使うよりもシンプルにプログラミングできるので、多くのシーンでfor文を使うことになるでしょう。ただし、後で学習するファイルの入出力プログラムなどはwhile文を使った方が単純に実装できるケースもあります。そのためwhile文、for文、両方の記述方法を理解しておくようにしましょう。


前へ次へ