当前位置:首页 > PHP教程 > php类库 > 列表

php静态文件生成类实例分析

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-05 18:39:45 浏览: 评论:0 

这篇文章主要介绍了php静态文件生成类,以实例形式较为详细的分析了使用php生成静态文件的方法及使用技巧,需要的朋友可以参考下

本文实例讲述了php静态文件生成类,分享给大家供大家参考。

具体实现方法如下:

  1. defined('phpfensi'or die(header("http/1.1 403 not forbidden")); 
  2.            
  3. class include_createstatic             
  4. {            
  5.                 
  6.     private $htmlpath = '';            
  7.     private $path = '';            
  8.     public $monthpath = '';            
  9.     private $listpath = '';            
  10.     private $content = '';            
  11.     private $filename = '';            
  12.     private $extname = '.html';            
  13.                 
  14.     public function createhtml($type,$desname,$content)            
  15.     {            
  16.         $this->htmlpath = getappinf('htmlpath');            
  17.         if (!file_exists($this->htmlpath))            
  18.         {            
  19.             @mkdir($this->htmlpath);            
  20.         }            
  21.         $this->path = $this->htmlpath.$this->monthpath.'/';            
  22.         if (!file_exists($this->path))            
  23.         {            
  24.             @mkdir($this->path);            
  25.         }            
  26.         $this->listpath = $this->htmlpath.'list/';            
  27.         if (!file_exists($this->listpath))            
  28.         {            
  29.             @mkdir($this->listpath);            
  30.         }            
  31.         switch ($type)            
  32.         {            
  33.             case 'index':            
  34.                 $this->filename = $desname;            
  35.                 break;            
  36.             case 'list':            
  37.                 $this->filename = $this->listpath.$desname;            
  38.                 break;            
  39.             case 'view':            
  40.                 $this->filename = $this->path.$desname;            
  41.                 break;            
  42.         }            
  43.         $this->filename .= $this->extname;            
  44.         $this->content = $content;            
  45.     }            
  46.                 
  47.     public function write()            
  48.     {            
  49.         $fp=fopen($this->filename,'wb');            
  50.         if (!is_writable($this->filename))            
  51.         {            
  52.             return false;            
  53.         }            
  54.         if (!fwrite($fp,$this->content))            
  55.         {            
  56.             return false;            
  57.         }            
  58.         fclose($fp);            
  59.         return $this->filename;            
  60.     }            
  61. }      
  62. //方法二 
  63. if(file_exists("./index.htm"))//看静态index.htm文件是否存在 
  64. $time=time(); 
  65. //文件修改时间和现在时间相差?的话,直接导向htm文件,否则重新生成htm 
  66. if(time-filemtime("./index.htm")< 600) 
  67. header("location:classhtml/main.htm"); 
  68. //在你的开始处加入ob_start(); 
  69. ob_start(); 
  70. //首页内容,就是你的动态部分了 
  71. //在结尾加入ob_end_clean(),并把本页输出到一个变量中 
  72. $temp=ob_get_contents(); 
  73. ob_end_clean(); 
  74. //写入文件 
  75. $fp=fopen("./index.htm",'w'); 
  76. fwrite(fp,temp) or die('写文件错误'); 
  77. //echo"生成html完成!";

Tags: php静态文件生成类

分享到:

相关文章