设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 站长学院 > PHP教程 > 正文

相关PHP生成静态页面详细讲解

发布时间:2022-08-02 16:58 所属栏目:121 来源:互联网
导读:详细讲解一下关于PHP生成静态页面的步骤:为了研究这静态的生成,我花了不少的时间,把我的经验给大家转述一下: 下面是我封装的create html 类: ?php class makehtml { //+---------------------------- //+ 创建HTML文件夹 按照格式建立 //+-------------
  详细讲解一下关于PHP生成静态页面的步骤:为了研究这静态的生成,我花了不少的时间,把我的经验给大家转述一下:
 
  下面是我封装的create html 类:
 
  <?php
 
  class makehtml
 
  {
 
  //+----------------------------
 
  //+ 创建HTML文件夹 按照格式建立
 
  //+-----------------------------
 
  function c_dir($html_type,$root)
 
  {
 
  $htmldata_dir=$root;
 
  if (!is_dir($htmldata_dir))
 
  {
 
  if (!mkdir($htmldata_dir,0777))
 
  {
 
  exit('对不起 ,这没有HTML文件夹'.$htmldata_dir.' 而且不能创建 .');
 
  }
 
  }
 
  elseif (!is_writable($htmldata_dir))
 
  {
 
  exit('对不起, 文件夹 '.$htmldata_dir.' 不可写');
 
  }
 
  return $htmldata_dir;
 
  }
 
  function replace_tpl($data,$input_data,$name)
 
  {//+ 替换 html 模板中的变量
 
  $data=str_replace("{title}",$input_data['title'],$data);
 
  $data=str_replace("{content}",$input_data['content'],$data);
 
  return $data;
 
  }
 
  function create_html($htmlpage,$name,$root,$input_data)
 
  {//+ 生成 html 文件 function create_html('模板','静态文件名','文件存储目录','提交数据');
 
  $htmldata_dir=$this->c_dir($html_type,$root); //c_dir("格式","名称")
 
  $modeltpl=$htmlpage; //可以加路径
 
  $fp=fopen($modeltpl,'r');
 
  $tpldata.=fread($fp,filesize($modeltpl));
 
  fclose($fp);
 
  $tpl_data=$this->replace_tpl($tpldata,$input_data,$name);
 
  $fp=fopen($htmldata_dir.'/'.$name.'.shtml','w+');
 
  unset($htmldata_dir);
 
  fwrite($fp,$tpl_data);
 
  fclose($fp);
 
  }  
 
  }
 
  ?>  
 
  代码应用方法,配合数据库操作,数据库表大家自己建。
 
  ​<?php
 
  include("mysql.php");
 
  include("create_html.php");
 
  $html=new makehtml(); //实例化CREATE HTML对象
 
  $op=$_GET["op"];
 
  if($op=='insert')
 
  {
 
  $title=$_POST["title"];
 
  $content=$_POST["content"];
 
  $file_path=date("Y-m",time()); //以时间的格式来命名文件夹
 
  $query=$DB->query("insert into news values('','$title','$content','$times','')");
 
  $name=$DB->insert_id();
 
  $sql_data=array(
 
  'title'=>$title,
 
  'content'=>$content
 
  );
 
  $html->create_html('model.html',$name,$file_path,$sql_data);
 
  //+分别代表的意思是:模板页面,生成后的名称,存放文件夹,写入模板的数据信息
 
  }
 
  ?>
 
  注意:在这里我只是写了个简单的思路,具体的需求需要根据大家的应用来了,这是最简单的发布,还有编辑希望想学习的朋友们继续研究。
 
 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读