ob_start([string output_callback])- 打開輸出緩沖區(qū)
所有的輸出信息不在直接發(fā)送到瀏覽器,而是保存在輸出緩沖區(qū)里面,可選得回調(diào)函數(shù)用于處理輸出結(jié)果信息。
ob_end_flush - 結(jié)束(發(fā)送)輸出緩沖區(qū)的內(nèi)容,關(guān)閉輸出緩沖區(qū)
使用output control 函數(shù)可以讓自由控制腳本中數(shù)據(jù)的輸出,這在我們想在header之前輸出時很有用。
代碼如下:
<?php
ob_start(); //打開緩沖區(qū)
echo 輸出n; //輸出
header(頭部信息);
ob_end_flush();//輸出全部內(nèi)容到瀏覽器
?>
個人使用ob多數(shù)是在生成靜態(tài)html的時候,當(dāng)某個頁面不會再刷新,當(dāng)其他的用戶再次瀏覽此頁面時,程序?qū)⒉粫僬{(diào)用php以及相關(guān)的數(shù)據(jù)庫教程。這時候使用ob生成html就是很好的做法。
代碼如下:
<?php
ob_start();
if(@readfile($tem_path)){ //把指定路徑中的內(nèi)容寫入緩存中。如果不存在返回false(就是某個你想轉(zhuǎn)換成html的php文件)
$content= ob_get_contents(); //得到緩存中的內(nèi)容
$fp = fopen(1.html, w); //創(chuàng)建一個文件,并打開,準(zhǔn)備寫入
fwrite($fp, $content); //把php頁面的內(nèi)容全部寫入1.html
}
fclose($fp);
ob_clean();
?>
更多信息請查看IT技術(shù)專欄