Задать вопрос
dzheka3d
@dzheka3d

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

Привет всем. Есть ли какой-то стандартный способ вычисления какой раз проходит цикл foreach? Может какая-то стандартная переменная хранит в себе это значение?
Чтобы не приходилось писать так:
$i = 0;
foreach($arr as $val) {
// тело цикла
$i++;
}
  • Вопрос задан
  • 3662 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 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 хранить еще какую-то дополнительную переменную-счетчик - это лишние операции, поэтому логично, что втихую никто не будет такими операциями нагружать обычный цикл.
Нужно считать - делайте счетчик, как вы сами привели в примере
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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