Na verdade, você tem duas opções aqui, dependendo de como você executa isso. Uma solução é limitar o tempo de execução dos scripts PHP - ou seja, você pode ter um script PHP encerrado automaticamente com base em seu tempo real de execução.
Se você estiver executando isso a partir de um servidor web (Apache, Lighttpd, etc.), você pode usar o max_execution_time . Por padrão, isso é 30 segundos. Se você estiver executando isso a partir do CLI, use a função set_time_limit . / p>
Outra solução é usar algo como monit
para monitorar a carga e o uso da CPU do processo PHP e eliminá-lo se chegar a um nível especificado.
Espero que isso ajude; embora possa ser uma boa ideia eliminar completamente estes tipos de erros lógicos dos seus scripts.