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

yipeiwu_com6年前PHP代码库

本文实例讲述了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")< 600)
{
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程序设计有所帮助。

相关文章

利用PHP访问带有密码的Redis方法示例

一、首先设置Redis密码,以提供远程登陆 打开redis.conf配置文件,找到requirepass,然后修改如下: requirepass yourpassword you...

php 重写分页器 CLinkPager的实例

php 重写分页器 CLinkPager的实例 1、自定义的分页器类放在哪里? 有两个位置可以放, 第一种是放在 protected/extensions 中,在使用是import...

PHP检测用户语言的方法

本文实例讲述了PHP检测用户语言的方法。分享给大家供大家参考。具体如下: function getPreferredLanguage() { $langs = array();...

PHP实现原比例生成缩略图的方法

本文实例讲述了PHP实现原比例生成缩略图的方法。分享给大家供大家参考,具体如下: <?php $image = "jiequ.jpg"; // 原图 $imgstrea...

用PHP与XML联手进行网站编程代码实例

一、小序    HTML简单易学又通用,一般的PHP程序就是嵌入在HTML语言之中实现的。但是随着WEB越来越广泛的应用,HTML的弱点也越来越明显了。XML的出现,弥补了这些...