欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

输出控制类

程序员文章站 2022-03-30 21:23:38
...
/**
*
* 作者: 徐祖宁 (唠叨)
* 邮箱: 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);
 }
}
?>

相关标签: 输出控制类