Bufferización de salida

Introducción

Las funciones de bufferización de salida permiten controlar cuándo los datos son enviados por el script. Esto puede ser útil en ciertas situaciones, especialmente si se deben enviar encabezados al navegador después de haber enviado datos. Estas funciones no afectan a los encabezados enviados por la función header() o a las cookies enviadas por setcookie(). Solo las funciones como echo y los datos entre bloques PHP son afectados.

add a note

User Contributed Notes 1 note

up
51
clancy hood at gmail dot com
16 years ago
The manual is a little shy on explaining that output buffers are nested, and that "turns off output buffering" means turning off the highest nested buffer.  See ob_get_level (for a useful function, but still no explanation)

<?php
    ob_start();
    echo "1:blah\n";
    ob_start();
    echo "2:blah";
    // ob_get_clean() returns the contents of the last buffer opened.  The first "blah" and the output of var_dump are flushed from the top buffer on exit
    var_dump(ob_get_clean());
    exit;
?>

puts:
    1:blah
    string(6) "2:blah"

Prior to realising this, I had thought PHP's ob functionality left more to be desired.  I *really* wish I knew earlier.
To Top