Proprio in automatico no. Ma puoi utilizzare le Output Control Functions, ovvero tutte quelle funzioni il cui nome inizia con ob_.
In particolare a te interessa ob_start() per iniziare la cattura dell'output della pagina.
Alla fine del tuo script utilizzi ob_get_flush() che oltre ad inviare l'output al browser ti restituisce la tua pagina sotto forma di stringa.
Infine la stringa (la pagina html prodotta) la salvi con una file_put_contents().
Per dettagli consulta il manuale.