Minificar saida html com PHP?

10/02/2016

Me indicaram uma leitura, li e não entendi, o que é Minificar saída HTML usando PHP?

[url]https://www.vivaolinux.com.br/dica/Minificar-saida-HTML-usando-PHP/[/url]

Marcio Araujo

Melhor resposta

11/02/2016

Seria pegar um HTML assim:

<html>
	<head>
		Teste
	</head>
	<body>
		<div>
			Texto do corpo
		</div>
	</body>
<html>


E transforma em isto:

<html><head>Teste</head><body><div>Texto do corpo</div></body><html>


Assim o arquivo fica menor e menos pesaod o que facilita o carregamento.

O jQuery disponibiliza a versões normais: jquery-ui.js e versões minidificadas: jquery-ui.min.css. Que possuem o meso contéudo mas o "min" fica tudo em uma única linha.

Esta tecnica é recomendada para sites realmente grande e com muitos acessos, então caso queira sair minificando tudo, antes avalie se é realemten necessário.

No caso so exemplo do link, não sei que retardar e tratar o HTML pode afetar a performance, mas é mais um processo, então tudo é possível.

Jothaz

Responder Citar

Outras Respostas

11/02/2016

Marcio Araujo

Sério mesmo Jothaz, eu li o artigo e não tinha entendido realmente, você me explicou e ficou claro agora, uma vez vi um arquivo do JQuery por exemplo, acho que "jquery.min.js" ou algo do tipo como descreveu, não fazia ideia, agora sim, vivendo e aprendendo.
Responder Citar

11/02/2016

Marcelo Pastore

Pra mim também é novidade e não sabia o porque dos arquivos (código) estarem daquele jeito.
Responder Citar

11/02/2016

Jothaz

Pois é por mais que aprendemos mais ainda temos de aprender. É uma batalha sem fim.

Se você considerar que .css, .js, .html e imagens são baixados e carregados na memória quanto mais enxuto melhor.

Muitas vezes o camarada referencia vários arquivos (.csc e .js) na página e não usa. Mas os arquivos são baixados e carregados.

Então se você souber realmente o que esta usando e retirar o lixo já vai ajudar muito.
Responder Citar

11/02/2016

Marcio Araujo

Ei me empolguei com a descoberta e acabei esquecendo da função do PHP do artigo em questão, ele faz a minificação do arquivo ok, e para "concertar" algum problema no html? identar tudo novamente?
Responder Citar

11/02/2016

Jothaz

O camarada usou a função ob_start() que "segura" o buffer de saída e ai você trata o HTML no buffer como quiser usando a função que ele escreveu:

function minify($buffer)
{
    $search = array(
        "\n",
        "\t",
        "\r",
        "\r\n",
        "\n\r",
    );
    $replace = array();
	


No caso ele esta somente "minidificando" retirando o espaços em branco e colocando tudo em uma linha o que deixa o arquivo menor.

Agora você pode usar para o que sua imaginação quiser. É só não viajar demais na maionese fazer algo que não tenha nenhum valor ou que pese na performance.

Não vejo lógica em "consertar" (pois concertar é: concordar e combinar) o HMTL, pois ele deve ser gerado corretamente na origem.

Mas certamente terá algum maluco arrumando alguma utilidade além de minidifcar. Eu a principio não consegui pensar em nada.
Responder Citar

11/02/2016

Karine Sobral

Poxa, algo a se preocupar ou isso seria apenas sistemas realmente grandes e pesados?
Responder Citar

11/02/2016

Marcio Araujo

Agradeço pela explicação!
Responder Citar

11/02/2016

Jothaz

Poxa, algo a se preocupar ou isso seria apenas sistemas realmente grandes e pesados?


Isto depende muito do cenário e já trabalhei em projeto gigantes que não precisaram desta abordagem.

Acredito que isto deva ser levando em consideração para dispositivos com poucos recursos e somente quando a página renderizada for muito grande.

Vou ressaltar o que disse no post anterior: muitas vezes as pessoas fazem referência a dezenas de .js e .css que não usam, o que pode pesar na performance, saiba realmente o que esta usando e limpe o lixo que já vai ajudar muito.
Responder Citar

24/02/2016

Karine Sobral

Complicado quando se perde o controle disso.
Responder Citar

27/02/2016

Marcio Araujo

Complicado quando se perde o controle disso.


Por isso que deve ser feito quando tiver 100%.
Responder Citar

02/03/2016

Karine Sobral

Vou deixar isso para depois, primeiro aprender, quando necessario, volto a ver essa necessidade.
Responder Citar

02/03/2016

Marcio Araujo

Tenho bastante curiosidade em tudo que considero novidade mesmo não sendo considerado por muitos! Se não opor gostaria que este post fosse considerado como encerrado, creio que todas as duvidas acerca do assunto foram bem esclarecidas.
Responder Citar