Как и в случае с if..endif, синтаксис while..endwhile был изменён:
while ($more_to_come); ... endwhile;
while ($more_to_come): ... endwhile;
Если вы используете старый синтаксис while..endwhile в PHP 3.0, вы получите бесконечный цикл.