ob_start(); // включить буфер
echo 'Test'; // это echo попадает в буфер (задерживается)
setcookie("name", "John"); // установить (отправить) куки
echo $_COOKIE['name']; // => John
ob_flush(); // Сброс (отправка) буфера вывода
Эта функция включает буферизацию вывода. Если буферизация вывода активна, вывод скрипта не высылается (кроме заголовков), а сохраняется во внутреннем буфере.
Содержимое этого внутреннего буфера может быть скопировано в строковую переменную, используя ob_get_contents(). Для вывода содержимого внутреннего буфера следует использовать ob_end_flush(). В качестве альтернативы можно использовать ob_end_clean() для уничтожения содержимого буфера.