本文实例讲述了php静态文件生成类。分享给大家供大家参考。
具体实现方法如下:
代码如下:
defined('phpjb51') or die(header(http/1.1 403 not forbidden));
class include_createstatic             
{
private $htmlpath = '';            
    private $path = '';            
    public $monthpath = '';            
    private $listpath = '';            
    private $content = '';            
    private $filename = '';            
    private $extname = '.html';
public function createhtml($type,$desname,$content)            
    {            
        $this->htmlpath = getappinf('htmlpath');            
        if (!file_exists($this->htmlpath))            
        {            
            @mkdir($this->htmlpath);            
        }            
        $this->path = $this->htmlpath.$this->monthpath.'/';            
        if (!file_exists($this->path))            
        {            
            @mkdir($this->path);            
        }            
        $this->listpath = $this->htmlpath.'list/';            
        if (!file_exists($this->listpath))            
        {            
            @mkdir($this->listpath);            
        }            
        switch ($type)            
        {            
            case 'index':            
                $this->filename = $desname;            
                break;            
            case 'list':            
                $this->filename = $this->listpath.$desname;            
                break;            
            case 'view':            
                $this->filename = $this->path.$desname;            
                break;            
        }            
        $this->filename .= $this->extname;            
        $this->content = $content;            
    }
public function write()            
    {            
        $fp=fopen($this->filename,'wb');            
        if (!is_writable($this->filename))            
        {            
            return false;            
        }            
        if (!fwrite($fp,$this->content))            
        {            
            return false;            
        }            
        fclose($fp);            
        return $this->filename;            
    }            
}      
//方法二
if(file_exists(./index.htm))//看静态index.htm文件是否存在 
{ 
$time=time(); 
//文件修改时间和现在时间相差?的话,直接导向htm文件,否则重新生成htm 
if(time-filemtime(./index.htm){ 
header(location:classhtml/main.htm); 
} 
} 
//在你的开始处加入ob_start(); 
ob_start(); 
//首页内容,就是你的动态部分了 
//在结尾加入ob_end_clean(),并把本页输出到一个变量中 
$temp=ob_get_contents(); 
ob_end_clean(); 
//写入文件 
$fp=fopen(./index.htm,'w'); 
fwrite(fp,temp) or die('写文件错误'); 
//echo生成html完成!;
希望本文所述对大家的php程序设计有所帮助。
   
 
   