Я делал это в прошлом, добавляя:
ob_start();
В верхней части страницы, а затем в нижнем колонтитуле:
$page_html = ob_get_contents();
ob_end_clean();
file_put_contents($path_where_to_save_files . $_SERVER['PHP_SELF'], $page_html);
Возможно, вы захотите конвертировать расширения .php в .html перед запуском HTML в файлы.
Если вам нужно сгенерировать несколько страниц с переменными, один довольно простой вариант - добавить имя файла с md5sum всех переменных GET, вам просто нужно изменить их и в HTML. Так что вы можете конвертировать:
somepage.php?var1=hello&var2=hullo
до
somepage_e7537aacdbba8ad3ff309b3de1da69e1.html
некрасиво, но работает.
Иногда вы можете использовать PHP для генерации javascript для эмуляции некоторых функций, но это не может быть очень легко автоматизировано.