Comprimeren is een van die optimalisaties voor een website die je makkelijk kan doen en dat toch een flink effect op de performance kan hebben. Gzip compressie resulteert in kleinere bestanden, dus minder bandbreedte en een stuk minder data dat naar een ongeduldige client vervoerd moet worden.
Gzip compressie voor in je PHP bestanden is een piece of cake met Output Buffering (OB). OB buffered alles dat je output in je scripts, en gooit het pas naar de browser wanneer je dat zelf aangeeft. Dit geinige truukje kan best handig zijn als je headers van binnenin je HTML wilt versturen, gezien de headers en HTML geordend worden als je het uitstuurt met OB.
OB can gzip compress the HTML buffered, so you can put this above everything in your PHP file:
if (substr_count($_SERVER["HTTP_ACCEPT_ENCODING"], "gzip"))
ob_start("ob_gzhandler");
else
ob_start();
Het controleert of gzip ondersteund word, en dan word output buffernig gestart met gzip compressie. Om alle gecomprimeerde output naar de browser te sturen kan je dit onderaan het PHP bestand zetten:
ob_end_flush();
Dit flushed alle output naar de browser.