欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

关于PHP生成静态页面详细讲荽

程序员文章站 2022-06-08 22:52:20
...
我来详细讲解一下关于PHP生成静态页面
答案
大家好,下面我来详细讲解一下关于PHP生成静态页面的步骤:
为了研究这静态的生成,我花了不少的时间,把我的经验给大家转述一下:
下面是我封装的create html 类:
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);

}

}

?>
复制代码应用方法:
配合数据库操作,数据库表大家自己建。
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);

//+分别代表的意思是:模板页面,生成后的名称,存放文件夹,写入模板的数据信息

}

?>
复制代码
注意:在这里我只是写了个简单的思路,具体的需求需要根据大家的应用来了,这是最简单的发布,还有编辑希望想学习的朋友们继
续研究。


其它解决方案
教程的一定要顶
其它解决方案
自己也顶一下 快掉了
其它解决方案
顶了顶了,我正要这样的东西学习了
其它解决方案
不但要顶,好要收藏!哈哈o(∩_∩)o...哈哈
其它解决方案
再顶一下...
其它解决方案
很好啊。支持一下!
[img]http://www.phpchina.com/bbs/images/smilies/default/smile.gif[/img]
其它解决方案
收藏了.呵呵..
其它解决方案
当初我研究了好长时间的DZ的代码!
想看看他们是搞静态的!
呵呵!
不过我看过几个PHP部落格程序的静态方法!
都大同小异吧!
和你这个也差不多!