<?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":'';
Exemplo #1 Exemplo de Controle de Saída
<?php
ob_start();
echo "Hello\n";
setcookie("cookiename", "cookiedata");
ob_end_flush();
?>
No exemplo acima, a saída de echo seria armazenada no buffer de saída até que ob_end_flush() fosse chamada. Neste meio tempo, a chamada a setcookie() armazenou com sucesso um cookie sem causar um erro. (Normalmente não se pode enviar cabeçalhos ao navegador depois que dados já foram enviados.)
<?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":'';