<?php
function ob($function){
ob_start();
$function();
$produced = ob_get_contents();
ob_end_clean();
return $produced;
}
echo ob(function(){echo 123;})=='123'?"echo captured\n":'';
Ejemplo #1 Ejemplo de control de la salida
<?php
ob_start();
echo "Hola\n";
setcookie("nombre_cookie", "datos_cookie");
ob_end_flush();
?>
En el ejemplo anterior, la salida de echo sería almacenada en el búfer de salida hasta que se llamara a ob_end_flush(). Mientras tanto, la llamada a setcookie() almacenaría con éxito una cookie sin causar ningún error. (Las cabeceras normalmente no se pueden enviar al navegador después de haber enviado ya los datos.)
<?php
function ob($function){
ob_start();
$function();
$produced = ob_get_contents();
ob_end_clean();
return $produced;
}
echo ob(function(){echo 123;})=='123'?"echo captured\n":'';