Pues puedes hacerlo tranquilamente con las funciones de manejo de buffer, es decir con las funciones ob_*
Podrias hacer algo asi como:
Código PHP:
function buildHTMLPage($archivo, $modo = "w+") {
ob_start()
for($i = 0; $i < 10; $i++) {
echo $i . "<br>"
}
$HTML = ob_get_contents();
ob_end_clean();
$fp = fopen($archivo, $modo);
fwrite($HTML, $fp);
fclose($fp)
}
buildHTMLPage("index.html", "a+");
Eso lo que te hace es generar una pagina llamada index.html a partir de un bucle, la pagina contendria un listado de numeros, lo mismo que eso lo puedes hacer generando el codigo via PHP, metiendolo en un buffer y escribiendo un archivo con los datos de ese buffer.
Espero que te sea de ayuda!
Un saludo!!