两种方法简单说明如下:
一, 利用PHP的输出控制函数(Output Control)得到静态页面字符串,再写入到新的文件中。
使用说明:
1、实例化
代码如下 | 复制代码 |
$cache = new Cache();2、设置缓存时间和缓存目录 $cache = new Cache(60, '/any_other_path/'); |
第一个参数是缓存秒数,第二个参数是缓存路径,根据需要配置。
默认情况下,缓存时间是 3600 秒,缓存目录是 cache/
3、读取缓存
代码如下 | 复制代码 |
$value = $cache->get('data_key');4、写入缓存 $value = $cache->put('data_key', 'data_value');完整实例: $cache = new Cache(); //从缓存从读取键值 $key 的数据 //如果没有缓存数据
class Cache { //cache constructor, optional expiring time and cache path //returns the filename for the cache //creates new cache files with the given data, $key== name of the cache, data the info/values to store //returns cache for the given key |
二, 利用模板生成
什么是模板?如果大家使用过Dreamwerver中的“另存为模板”就应该知道模板是用来统一风格的东西。它只让你修改页面的某一部分,当然这“某一部分”是由你来确定的。本文在这说的模板也就是这个意思。(此外,PHP模板技术还包括phplib、smarty等等,这不是本文所说内容了)
把模板的概念结合本文再说得具体一点就是:美工先做好一个页面,然后我们把这个页面当作模板(要注意的是这个模板就没必要使用EditRegion3这样的代码了,这种代码是Dreamwerver为了方便自己设计而弄的标识),把这个模板中我们需要改变的地方用一个与HTML可以区分的字符代替,如“{title}”、“[title]”。在生成静态页面的时候只需要把数据和这些字符串替换即可。这就是模板的含义了。
步骤:
1.新建一个php页面和一个html页面[模板页];注:如果是从数据库调用数据,则将数据以数组的形式保存,然后循环生成;
2.在php页面,打开html页面->读取html页面的内容->替换参数->新建(打开)一个新的html页面->将替换的内容写入新文件中->关闭新文件->生成成功;
代码如下 | 复制代码 |
$open = fopen("template.htm","r"); //打开模板文件 $newtemp = fopen("1.htm","w");//生成,用写入方式打开一个不存在(新)的页面 |
php批量生成html测试:
代码如下 | 复制代码 |
//假设从数据库中调的数据存放在二维数组$arr中 foreach($arr as $key=>$value){ $content = str_replace("{title}",$title,$handle);//替换 $newtemp = fopen($path,"w");//用写入方式打开一个不存在(新)的页面 |