Bufferování výstupu PHP

Bufferování způsobí, že veškerý výstup bude uchováván na serveru v mezipaměti a k prohlížeči zaslán až po dokončení skriptu nebo zavolání funkce ob_flush().

Této techniky se využívá nejčastěji v případech, kdy se nelze vyvarovat výstupu před funkcemi zasílajících prohlížeči informace v HTML hlavičce. Těmi jsou zejména header(), funkce pro práci s cookies, apod...

Bufferování lze řídit pomocí nastavení PHP.

Použití v PHP

Nejjednodušší použití demonstruje následující příklad. Na úplný začátek souboru vložte ob_start() a na konec ob_flush().

<?php
  ob_start
();

  
// ... skript ...

  
ob_flush();
?>

Více informací naleznete v dokumentaci PHP pro ob_start().

Nastavení pomocí .user.ini

Pokud nechcete zasahovat do PHP skriptů, můžete bufferování zapnout globálně pro celý web nebo adresář (vč. podadresářů). Do souboru .user.ini vložte následující řádek

output_buffering = on

 

Související stránky