下面3個函數的用法php
ob_get_contents() - 返回輸出緩衝區的內容html
ob_flush() - 沖刷出(送出)輸出緩衝區中的內容瀏覽器
ob_clean() - 清空(擦掉)輸出緩衝區服務器
ob_end_flush() - 沖刷出(送出)輸出緩衝區內容並關閉緩衝函數
ob_end_clean() - 清空(擦除)緩衝區並關閉輸出緩衝spa
flush() - 刷新輸出緩衝 .net
一般是ob_flush();flush()同時一塊兒使用
使用ob_start()把輸出那同輸出到緩衝區,而不是到瀏覽器。
而後用ob_get_contents獲得緩衝區的數據。code
ob_start()在服務器打開一個緩衝區來保存全部的輸出。因此在任什麼時候候使用echo ,輸出都將被加入緩衝區中,直到程序運行結束或者使用ob_flush()來結束。而後在服務器中緩衝區的內容纔會發送到瀏覽器,由瀏覽器來解析顯示。
函數ob_end_clean 會清除緩衝區的內容,並將緩衝區關閉,但不會輸出內容。
此時得用一個函數ob_get_contents()在ob_end_clean()前面來得到緩衝區的內容。
這樣的話, 能將在執行ob_end_clean()前把內容保存到一個變量中,而後在ob_end_clean()後面對這個變量作操做。htm
例:get
<?php
ob_start();
echo "Hello ";
$out1 = ob_get_contents();
echo "World";
$out2 = ob_get_contents();
ob_end_clean();
var_dump($out1, $out2);
?>
輸出:
string(6) "Hello " string(11) "Hello World"