php生成静态html文件

 时间:2026-02-12 02:51:04

1、在执行之前,要在根目录下的程序入口文件index.php中进行如下配置:

//生成静态页面的文件位置define('HTML_PATH', './HTML/');

php生成静态html文件

2、// 生成静态html

    function create_html($id,$title,$content){

        ob_start();//开启静态缓存

        $category_id = M("article")->where("id = $id")->getfield("category_id");

        $nid = M("article")->field("id")->where("id > $id and category_id = $category_id")->getfield("id");

        $pid = M("article")->field("id")->where("id < $id and category_id = $category_id")->order("id desc")->getfield("id");

        $server = "http://".$_SERVER['SERVER_NAME']."/";

        if($pid>0){

            $particle = M("article")->field("id,title,url")->where("id = '$pid'")->find();

            if ($particle) {

                $temples['particle'] = "上一篇:<a href='".$server.$particle['url']."' title='".$particle['title']."'>".$particle['title']."</a>";

            }else{

                $temples['particle'] = "上一篇:没有了";

            }

        }else{

            $temples['particle'] = "上一篇:没有了";

        }

        if($nid>0){

            $narticle = M("article")->field("id,title,url")->where("id = '$nid'")->find();

            if ($narticle) {

                $temples['narticle'] = "下一篇:<a href='".$server.$narticle['url']."' title='".$narticle['title']."'>".$narticle['title']."</a>";

            }else{

                $temples['narticle'] = "下一篇:没有了";

            }

        }else{

            $temples['narticle'] = "下一篇:没有了";

        }

        // 判断数据库中是否有这个静态文件,如果有更新url,如果没有增加html

        $article = M("article")->field("id,title,url")->where("id = '$id'")->find();

        $temples['title'] = $title;

        $temples['content'] = $content;

        require("new_file.html");//引用模板文件

        $path = M("category")->where("id = $category_id")->getfield("url")."/".date("Ymd");

        if (!is_dir($path)) mkdir($path,0777,true); // 如果不存在则创建 

        $url =  $path."/".$id.".html";

        $result = file_put_contents($url, ob_get_clean()); //ob_get_clean()获取当前缓冲区内容并清除当前的输出缓冲

        $up_url = M("article")->where("id = '$id'")->setfield("url",$url);

        return  $result;

    }

php生成静态html文件

3、//新闻列表

CREATE TABLE `news_article` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `category_id` int(11) NOT NULL COMMENT '新闻栏目id',

  `publisher` int(11) NOT NULL COMMENT '发布者',

  `title` varchar(50) NOT NULL COMMENT '文章标题',

  `content` text NOT NULL COMMENT '新闻内容',

  `keywords` varchar(255) NOT NULL COMMENT '关键字',

  `flag` varchar(11) NOT NULL COMMENT '属性',

  `description` varchar(255) NOT NULL COMMENT '描述',

  `img` varchar(255) NOT NULL,

  `url` varchar(255) NOT NULL COMMENT '静态url',

  `addtime` varchar(20) NOT NULL COMMENT '添加时间',

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=51 DEFAULT CHARSET=utf8 COMMENT='新闻表';

php生成静态html文件

4、//新闻栏目表

CREATE TABLE `news_category` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `pid` int(11) NOT NULL,

  `name` varchar(20) NOT NULL COMMENT '类别名称',

  `alias` varchar(20) NOT NULL COMMENT '别名',

  `sort` int(11) NOT NULL COMMENT '排序',

  `url` varchar(255) NOT NULL,

  `lv` int(11) NOT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COMMENT='新闻栏目表';

php生成静态html文件

5、这是一个比较简单的生成静态页面的方法,您只需要掌握ob函数,灵活运用即可。这里我只是根据我的需求封装了一个生成静态页面的函数,您可根据自己网站需求自行更改

php生成静态html文件

  • Linux打开终端的快捷键
  • excel教程之如何创建扇形图
  • 蓝屏报错0x00000006解决方法?
  • 影驰铁甲战将120G固态硬盘介绍和对比
  • Windows7如何设置更改时区
  • 热门搜索
    贴画图片大全 表格模板大全 牛的简笔画图片大全 挠脚心视频大全 有双下巴怎么办 七七卢沟桥事变简介 幽默冷笑话大全爆笑 五行属金的字大全 农村电视剧大全 怎么预防老年斑