dzheka3d
@dzheka3d

Порядковый номер обхода foreach?

Привет всем. Есть ли какой-то стандартный способ вычисления какой раз проходит цикл foreach? Может какая-то стандартная переменная хранит в себе это значение?
Чтобы не приходилось писать так:
$i = 0;
foreach($arr as $val) {
// тело цикла
$i++;
}
  • Вопрос задан
  • 3503 просмотра
Решения вопроса 2
27cm
@27cm
TODO: Написать статус
Это и есть "стандартный способ".

Если массив индексированный, причём с индексами 0, 1, 2, 3..., то можно проще:
foreach ($arr as $i => $val) {
    // тело цикла
}


Если массив ассоциативный, но вам не нужны его ключи:
foreach (array_values($arr) as $i => $val) {
    // тело цикла
}
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev
software engineer
нет никаких стандартных способов. Для foreach хранить еще какую-то дополнительную переменную-счетчик - это лишние операции, поэтому логично, что втихую никто не будет такими операциями нагружать обычный цикл.
Нужно считать - делайте счетчик, как вы сами привели в примере
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы