Принцип косвенного перебора заключается в том, что сначала вычисляется очередной индекс (ключ), а затем по этому индексу косвенно находится значение элемента массива. Например:
$People[0]=»Коля»;
$People[1]=»Витя»;
$People[2]=»Дима»;
for($i=0; $i $value) echo «$key = $value»;
Недостатки косвенного перебора
Косвенный перебор очень прост, а код, написанный с использованием косвенного перебора, очень читаем. Даже если вы вообще не знаете PHP, вы понимаете, что здесь и к чему. Однако косвенный перебор имеет существенные недостатки. Один из недостатков должен сразу броситься вам глаза: если в массиве встретится элемент с индексом 0, то после того, как он будет передан в цикл функцией key(), цикл прекратит свою работу.
И еще один недостаток: вы не можете использовать косвенный перебор во вложенных циклах, так как функция Next() второго цикла изменит положение текущего элемента в первом цикле.
Прямой перебор лишен этих недостатков.