Кажется, что следующее из руководства PHP относительно for
циклов неверно.
Они ведут себя как их коллеги С.
Это мое понимание for
петель.
В С
for (i = foo; i < 10; i++) { /* body */ }
эквивалентно
if ( i = foo )
{ while (i < 10)
{ /* body */
i++;
}
}
В PHP сравнимый цикл
for ($i = $foo; $i < 10; $i++) { /* body */ }
становится
$i = $foo;
while ($i < 10)
{ /* body */
$i++;
}
Разница в том, что в PHP $i = $foo
это не условие, а удобное место для утверждения. Предположим, мы изменили сингл =
на ==
. Различие становится значительным. Это правильно? Если это так, то циклы PHP и C ведут себя по-разному, а руководство неверно, верно?