No es así, PHP no está pendiente a cambios que hayas hecho a alguna variable, si empieza un ciclo lo continúa hasta el final. Ahora lo habrías indicado mejor de la forma como lo indicaste. Una forma de lograr que se detenga es colocando un tiempo de ejecución, es decir, usa time y unos calculos matemáticos para saber cuanto tiempo ha transcurrido y lo detienes despues de cierto tiempo, es decir algo como
Código PHP:
Ver original<?php
for($i=0; $i<9999999; $i++){
$codingTime = time() - $time; if($codingTime == 5){
echo 'Empezó: ' . $time . '<br />'
}
}