2017-03-09 00:00:00少芬 网页程序设计
经常操作网站后台的人都知道,现在大多数的网站系统,如dedecms、phpcms、帝国等知名内容管理系统都提供生成静态页面的功能,这不光有利于搜索引擎的抓取,而且还能有效降低服务器压力,所以说这是一个很流行、实用的功能。
对于学习PHP,将要从事WEB网站开发的朋友们来说,了解这个功能是必不可少的,由此,下面来分享一下PHP生成静态页面的原理。
一、思路分析
其实,实现静态页面生成功能的原理很简单,主要利用几个常见的PHP文件操作函数对文件进行操作,其思路流程如下:
生成静态页面流程图
二、功能实现
设置example.html为模板文件,然后按照此模板文件生成article-1.html~article-5.html,以此来做简单的演示,代码如下:
<?php
//将数据存入二维数组
$con=array(array('文章标题1','文章内容1'),
array('文章标题2','文章内容2'),
array('文章标题3','文章内容3'),
array('文章标题4','文章内容4'),
array('文章标题5','文章内容5'));
foreach($con as $id=>$val){
//循环生成
$title=$val[0];
$content=$val[1];
$path="article-".($id+1).".html";
//替换example内容,并获取内容赋值给$str
$fp=fopen("example.html","r");
$str=fread($fp,filesize("example.html"));
$str=str_replace("{title}",$title,$str);
$str=str_replace("{content}",$content,$str);
fclose($fp);
//新建空白文件,将$str写入
$handle=fopen($path,"w");
fwrite($handle,$str);
fclose($handle);
echo "生成".$path."<br/>";
}
?>
注解:
fopen(文件名,打开方式),打开文件函数,若无文件,则创建。其返回值为资源型;
fread(文件名,读取字节数),读取文件内容及对应的字节数;
str_replace(规定要查找的值,替换被查找值的值,被搜索的字符串),替换函数;
fclose(文件名),关闭文件;
fwrite(要写入的打开文件,要写入打开文件的字符串,要写入的最大字节数)。
三、最后
原理比较简单,作为php初学者,要把每个基础知识扎实学好,坚持每天撸码,形成条件反射,其次以工作需求为导向,设定好阶段性目标,相信,你的PHP之路定会风光无限,共勉!
[网页程序设计]热门推荐
871
人