1
2/**
3*
4* 作者: 徐祖宁 (唠叨)
5* 邮箱: [email protected]
6* 开发: 2002.07
7*
8*
9* 类: outbuffer
10* 功能: 封装部分输出控制函数,控制输出对象。
11*
12* 方法:
13* run($proc) 运行php程序
14* $proc php程序名
15* display() 输出运行结果
16* savetofile($filename) 保存运行结果到文件,一般可用于生成静态页面
17* $filename 文件名
18* loadfromfile($filename) 装入保存的文件
19* $filename 文件名
20*
21* 示例:
22* 1.
23* require_once "outbuffer.php";
24* $out = new outbuffer();
25* $out->run("test.php");
26* $out->display();
27*
28* 2.
29* require_once "outbuffer.php";
30* require_once "outbuffer.php";
31* $out = new outbuffer("test.php");
32* $out->savetofile("temp.htm");
33*
34* 3.
35* require_once "outbuffer.php";
36* $out = new outbuffer();
37* $out->loadfromfile("temp.htm");
38* $out->display();
39*
40*/
41
42class outbuffer {
43var $length;
44var $buffer;
45function outbuffer($proc="") {
46$this->run($proc);
47}
48function run($proc="") {
49ob_start();
50include($proc);
51$this->length = ob_get_length();
52$this->buffer = ob_get_contents();
53$this->buffer = eregi_replace("\r?\n","\r\n",$this->buffer);
54ob_end_clean();
55}
56function display() {
57echo $this->buffer;
58}
59function savetofile($filename="") {
60if($filename == "") return;
61$fp = fopen($filename,"w");
62fwrite($fp,$this->buffer);
63fclose($fp);
64}
65function loadfromfile($filename="") {
66if($filename == "") return;
67$fp = fopen($filename,"w");
68$this->buffer = fread($fp,filesize($filename));
69fclose($fp);
70}
71}
输出控制类
comments powered by Disqus