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


Posted in PHP onJanuary 03, 2015

本文实例讲述了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 相关文章推荐
计算2000年01月01日起到指定日的天数
Oct 09 PHP
PHP面向对象编程快速入门
Dec 14 PHP
WindowsXP中快速配置Apache+PHP5+Mysql
Jun 05 PHP
完美解决PHP中文乱码
Nov 26 PHP
深入分析php之面向对象
May 15 PHP
PHP不用递归实现无限分级的例子分享
Apr 18 PHP
PHP实现数组递归转义的方法
Aug 28 PHP
PHP动态编译出现Cannot find autoconf的解决方法
Nov 05 PHP
PHP创建多级目录的两种方法
Oct 28 PHP
基于php数组中的索引数组和关联数组详解
Mar 12 PHP
PHP反射原理与用法深入分析
Sep 28 PHP
PHP rsa加密解密算法原理解析
Dec 09 PHP
php采集内容中带有图片地址的远程图片并保存的方法
Jan 03 #PHP
php中socket通信机制实例详解
Jan 03 #PHP
php读取csv数据保存到数组的方法
Jan 03 #PHP
php获取用户浏览器版本的方法
Jan 03 #PHP
php堆排序实现原理与应用方法
Jan 03 #PHP
php购物车实现方法
Jan 03 #PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 #PHP
You might like
PHP与SQL注入攻击[二]
2007/04/17 PHP
PHP无刷新上传文件实现代码
2011/09/19 PHP
php计算两个文件相对路径的方法
2015/03/14 PHP
php创建无限级树型菜单
2015/11/05 PHP
Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
2016/12/27 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
JavaScript函数、方法、对象代码
2008/10/29 Javascript
Javascript 陷阱 window全局对象
2008/11/26 Javascript
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
js随机颜色代码的多种实现方式
2013/04/23 Javascript
jquery控制display属性为none或block
2014/03/31 Javascript
js判断鼠标左、中、右键哪个被点击的方法
2015/01/27 Javascript
Bootstrap每天必学之简单入门
2015/11/19 Javascript
JavaScript File API文件上传预览
2016/02/02 Javascript
通过node-mysql搭建Windows+Node.js+MySQL环境的教程
2016/03/01 Javascript
浅谈JavaScript前端开发的MVC结构与MVVM结构
2016/06/03 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
vue如何获取点击事件源的方法
2017/08/10 Javascript
angular6 利用 ngContentOutlet 实现组件位置交换(重排)
2018/11/02 Javascript
了解JavaScript函数中的默认参数
2019/05/30 Javascript
vue 父组件通过v-model接收子组件的值的代码
2019/10/27 Javascript
javascrpt密码强度校验函数详解
2020/03/18 Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
2020/06/19 Javascript
关于vue-cli3打包代码后白屏的解决方案
2020/09/02 Javascript
[55:44]完美世界DOTA2联赛决赛 FTD vs Phoenix 第二场 11.08
2020/11/11 DOTA
Python设计模式之中介模式简单示例
2018/01/09 Python
python实现键盘控制鼠标移动
2020/11/27 Python
python 检查是否为中文字符串的方法
2018/12/28 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
怎样创建、运行java程序
2014/08/01 面试题
审计主管岗位职责
2014/01/31 职场文书
党校学习心得体会范文
2014/09/09 职场文书
民事纠纷协议书
2016/03/23 职场文书
Pytest allure 命令行参数的使用
2021/04/18 Python
Python Matplotlib库实现画局部图
2021/11/17 Python