One of the quick ways to take advantage of an existing PHP is this:
<?php
ob_start(); // Isto bloqueia a saida do PHP para a "tela"
... tudo que você faria normalmente no PHP
$gerado = ob_get_contents(); // Aqui capturamos o que seria enviado
ob_end_clean(); // E limpamos, pois já está na string
// neste momento, tudo que seria enviado para o cliente está em $gerado
// e pode ser salvo em disco
file_put_contents('arquivo.html', $gerado);
If you're building a slightly more sophisticated application, you can avoid output buffer
and generate HTML directly in string . Instead of using echo
, for example, you can concatenate this way:
<?php
$titulo = 'Meu HTML gerado'; // normalmente vai pegar de DB ou formulario
$conteudo = 'Lorem Ipsum Batatas Doces';
// Montamos nosso HTML no PHP, da forma que quisermos
// \t é o tab, \n a quebra de linha
$html = "<html>\n";
$html .= "\t<head>\n";
$html .= "\t\t<title>".htmlentities( $titulo )."</title>\n";
$html .= "\t</head>\n";
$html .= "\t<body>\n";
$html .= "\t\t<div>".htmlentities( $conteudo )."</div>\n";
$html .= "\t</body>\n";
$html .= "</html>\n";
//... e vai montando o arquivo com variáveis etc
// e depois salva
file_put_contents('arquivo.html', $html);