下記のようにすると、配列(連想配列)のキーと値を順番に取り出すことができます。 通常の配列の場合は、キーは 0、1、2 といった数値です。
foreach ($arr as $key => $val) {
print "$key => $val\n";
}
キーが必要ない場合は、以下のように値だけを順に取得することもできます。
foreach ($arr as $value) {
...
}
C/C++ 言語風に、数値インデックス指定によってループ処理を行うこともできます。
$arr = array('AAA', 'BBB', 'CCC');
for ($i = 0, $len = count($arr); $i < $len; ++$i) {
print "$arr[$i]\n";
}
ちなみに以下のように、条件判断部分で count()
を呼んでしまうと、何度も count()
が実行されるので効率が悪くなります。
for ($i = 0; $i < count($arr); ++$i) { // 効率悪い
print "$arr[$i]\n";
}
多少コードは長くなりますが、前者のように配列サイズを一時変数 ($len
) に取得してループさせるのがよいでしょう(というか、そもそも foreach
ループを使ったほうがよいですが)。