Определить последнее значение цикла for

Статус
В этой теме нельзя размещать новые ответы.

silmarion

Полезный
Регистрация
21 Июн 2012
Сообщения
194
Реакции
19
Добрый день, ситуация такая

Код:
for ($b=0; $b<count($m[0]; $b++) {

echo $b; // 0 1 2 3 4 5 и т.д.

if ($b == последнее значение) {echo 'последнее значение: '.$b;}
}

Как получить это последнее значение?
Для массивов есть вроде end($array)
А с циклами как?
 
У Вас первое и последнее значение совпадают... Syntax error... for ($b=0; $b<count($m[0]; $b++) { - скобок явно не хватает

А так, последнее значение $b будет count($m[0]);
 
У Вас первое и последнее значение совпадают... Syntax error... for ($b=0; $b<count($m[0]; $b++) { - скобок явно не хватает

А так, последнее значение $b будет count($m[0]);
Копипаст не хотел код вставлять в пост, так что набросал быстро на глаз

сейчас попробую.

Да, подошло, спасибо, единственное так как $b<count($m[0]; а не $b<=count($m[0];

То использовал
$bb=count($m[0]);
if ($b == $bb-1)
 
Последнее редактирование:
Вынесите count($m[0]) перед for и сохраните в переменной, что бы каждый раз значение не пересчитывалось, будет наглядней и проще, что то вроде:

Код:
$max = count($m[0]);

for ($b=0; $b<=$max; $b++) {

echo $b; // 0 1 2 3 4 5 и т.д.

if ($b == $max) {echo 'последнее значение: '.$b;}
}
 
зачем вообще ставить условие в цикле? воткни после цикла - "echo 'последнее значение: '.--$b;" без всяких условий - результат будет такой же
 
вообще в условие выполнения цикла лучше не вставлять функцию, т.к. она вызывается каждый раз. По скорости выполнения это будет гораздо медленнее, чем если бы было вынесено из условия.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху