PHPの配列ループ

繰り返しいろいろ。ループ回数も取得する場合。

foreach

<?php

$i = 0;
foreach ($array as $key => $value) {
    // なんらかの処理
    echo $i++;
}

while

foreachのように配列のコピーを作成しないのでメモリを節約できる

<?php
$i = 0;
reset($array);
while (list($key, $value) = each($array)) {
    // なんらかの処理
    echo $i++;
}

for

初期化もforの中で行う。echoだとなぜかエラーになるのでprint

<?php
for ($i = 0, reset($array); list($key, $value) = each($array); print $i++) {
    // なんらかの処理
}