輸出控制類
來源:互聯網
上載者:User
關鍵字
輸出控制類
/**
*
* 作者: 徐祖寧 (嘮叨)
* 郵箱: czjsz_ah@stats.gov.cn
* 開發: 2002.07
*
*
* 類: outbuffer
* 功能: 封裝部分輸出控制函數,控制輸出對象。
*
* 方法:
* run($PRoc) 運行php程式
* $proc php程式名
* display() 輸出運行結果
* savetofile($filename) 儲存運行結果到檔案,一般可用於產生靜態頁面
* $filename 檔案名稱
* loadfromfile($filename) 裝入儲存的檔案
* $filename 檔案名稱
*
* 樣本:
* 1.
* require_once "outbuffer.php";
* $out = new outbuffer();
* $out->run("test.php");
* $out->display();
*
* 2.
* require_once "outbuffer.php";
* require_once "outbuffer.php";
* $out = new outbuffer("test.php");
* $out->savetofile("temp.htm");
*
* 3.
* require_once "outbuffer.php";
* $out = new outbuffer();
* $out->loadfromfile("temp.htm");
* $out->display();
*
*/
class outbuffer {
var $length;
var $buffer;
function outbuffer($proc="") {
$this->run($proc);
}
function run($proc="") {
ob_start();
include($proc);
$this->length = ob_get_length();
$this->buffer = ob_get_contents();
$this->buffer = eregi_replace("\r?\n","\r\n",$this->buffer);
ob_end_clean();
}
function display() {
echo $this->buffer;
}
function savetofile($filename="") {
if($filename == "") return;
$fp = fopen($filename,"w");
fwrite($fp,$this->buffer);
fclose($fp);
}
function loadfromfile($filename="") {
if($filename == "") return;
$fp = fopen($filename,"w");
$this->buffer = fread($fp,filesize($filename));
fclose($fp);
}
}
?>