当前位置:多学网学习教育电脑学习编程入门PHP教程php+smarty生成静态页

php+smarty生成静态页

[08-23 22:07:27]   来源:http://www.duoxue8.com  PHP教程   阅读:132
php+smarty生成静态页,标签:PHP技巧,php培训,php学习,php安装,http://www.duoxue8.com

smarty中有一个获取模板页内容方法fetch(), 它的声明原形是这样的: 
<?php 

function fetch($resource_name, $cache_id = null, 
$compile_id = null, $display = false) 

?>
第一个参数为模板名称, 第二个参数为缓存的id, 第三个参数为编译id, 第四个参数为是否显示模板内容. 生成静态页我们就需要用到这个方法.

<?php 
$smarty = new Smarty(); 
//其它模板替换语法... 

//下面这句取得页面中所有内容, 注意最后一个参数为false 
$content = $smarty->fetch('模板名称.tpl', null, null, false); 

//下面将内容写入至一个静态文件 
$fp = fopen('news.html', 'w'); 
fwrite($fp, $content); 
fclose($fp); 

//OK, 到这里这个news.html静态页就生成了, 你可以处理你下一步的工作了 
?> 关于新闻表的设置问题你只需要: 
代码:

<?php 

create table news ( 
id int unsgined not null primary key auto_increment, 
title varchar(255), 
author varchar(50), 
url varchar(100), /* 这里是生成静态页的地址 */ 
... /*其它字段*/ 
); 

?> 


 

页面上你将新闻地址提取出来后就OK了..
补充:
这个URL在新闻入库的时候就要生成, 具体的过程是这样的: 
1. 页面填写新闻内容, 提交表单 
2. 按时间或是你自定义的格式生成URL 
3. 拼接SQL语句, 将新闻内容写入数据库, 注意这时也要将URL的值写入 
4. 取得模板页面内容, 按URL地址生成静态页 

URL字段不会自动产生内容的...

但我自己,遗留的问题,就是,生成的静态页,以后,怎么换模板,就是如果,我的页面风格,变了,


怎么才能让生成好的,以后,再访问的时候,也变呢?




php+smarty生成静态页 结束。
Tag:PHP教程PHP技巧,php培训,php学习,php安装电脑学习 - 编程入门 - PHP教程