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