Os tamanhos dos buffers são expressos por números inteiros e representam o número de bytes que o buffer pode armazenar sem descarregar. Quando o tamanho da saída no buffer excede o tamanho do buffer, o conteúdo do buffer é enviado para o manipulador de saída, seu valor de retorno é descarregado e o buffer é limpo.
Com exceção de "URL-Rewriter"
,
o tamanho dos buffers de saída pode ser definido quando o buffer é iniciado.
Se definido como 0
,
o buffer de saída será limitado apenas pela memória disponível para o PHP.
Se definido como 1
,
o buffer será descarregado após cada bloco de código produzir
qualquer saída de comprimento diferente de zero.
O tamanho dos buffers de saída pode ser recuperado chamando ob_get_status().
Buffers de saída iniciados com ob_start()
terão seus tamanhos de buffer definidos para o valor inteiro passado para
o segundo parâmetro chunk_size
da função.
Se omitido, será definido como 0
.
O buffer de saída iniciado com
output_buffering
definido como "On"
terá seu tamanho de buffer definido como 0.
Se definido como um número inteiro, o tamanho do buffer corresponderá a esse número.
O tamanho do buffer do "URL-Rewriter"
está definido como 0
,
portanto ele é limitado apenas pela memória disponível para o PHP.
O tamanho do buffer de saída do zlib
é controlado pela configuração
zlib.output_compression
do php.ini.
Se definido como "On"
o tamanho do buffer será
"16K"
(16384
).
Se definido como um número inteiro, o tamanho do buffer corresponderá a esse número em bytes.