输出控制类

WBOY
WBOY원래의
2016-06-01 14:29:01891검색
/**
*
* 作者: 徐祖宁 (唠叨)
* 邮箱: 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);
 }
}
?>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.