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 buďto pomocí PHP nebo .htaccess.
Použití v PHP
Nejjedodužší 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
(pouze pro PHP 5.3.0 nebo vyšší)
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
Nastavení pomocí .htaccess
(pouze pro PHP 5.2.x nebo nižší)
Pokud nechcete zasahovat do PHP skriptů, můžete bufferování zapnout globálně pro celý web nebo adresář (vč. podadresářů). Do souboru .htaccess vložte následující řádek
<IfModule mod_php5.c>
php_flag output_buffering on
</IfModule>
Jakékoliv kopírování, publikování nebo šíření obsahu je výslovně zakázáno bez předchozího písemného souhlasu společnosti ONEsolution s.r.o.