smarty实现PHP静态化
smarty中有一个获取模板页内容方法fetch(), 它的声明原形是这样的: ?php function fetch ( $resource_name , $cache_id = null , $compile_id = null , $display = false ) ? 第一个参数为模板名称, 第二个参数为缓存的id, 第三个参数为编译id, 第四个参数为
smarty中有一个获取模板页内容方法fetch(), 它的声明原形是这样的:
<span><font face="新宋体"><span><?php <br />
<br>
</span><span>function </span><span>fetch</span><span>(</span><span>$resource_name</span><span>, </span><span>$cache_id </span><span>= </span><span>null</span></font><font face="新宋体"><span>, <br>
</span><span>$compile_id </span><span>= </span><span>null</span><span>, </span><span>$display </span><span>= </span><span>false</span></font><span><font face="新宋体">) <br>
<br>
</font></span><span><font face="新宋体">?><br>
</font></span></span>
第一个参数为模板名称, 第二个参数为缓存的id, 第三个参数为编译id, 第四个参数为是否显示模板内容. 生成静态页我们就需要用到这个方法.
<span><font face="新宋体"><span><?php <br />
$smarty </span><span>= new </span><span>Smarty</span></font><span><font face="新宋体">(); <br>
</font></span><font face="新宋体"><span>//其它模板替换语法... <br>
<br>
//下面这句取得页面中所有内容, 注意最后一个参数为false <br>
</span><span>$content </span><span>= </span><span>$smarty</span><span>-></span><span>fetch</span><span>(</span><span>'模板名称.tpl'</span><span>, </span><span>null</span><span>, </span><span>null</span><span>, </span><span>false</span></font><span><font face="新宋体">); <br>
<br>
</font></span><font face="新宋体"><span>//下面将内容写入至一个静态文件 <br>
</span><span>$fp </span><span>= </span><span>fopen</span><span>(</span><span>'news.html'</span><span>, </span><span>'w'</span></font><font face="新宋体"><span>); <br>
</span><span>fwrite</span><span>(</span><span>$fp</span><span>, </span><span>$content</span></font><font face="新宋体"><span>); <br>
</span><span>fclose</span><span>(</span><span>$fp</span></font><span><font face="新宋体">); <br>
<br>
</font></span><font face="新宋体"><span>//OK, 到这里这个news.html静态页就生成了, 你可以处理你下一步的工作了 <br>
</span><span>?> </span></font></span>
<span><font face="新宋体"><span>
<table>
<tr>
<td valign="top">
<p>关于新闻表的设置问题你只需要: <br>
</p>
<table>
<tr>
<td>
<p>代码:</p>
<p><code><span><br>
<span><font face="新宋体"><?php <br />
<br>
create table news </font></span><font face="新宋体"><span>( <br>
</span><span>id int unsgined not null primary key auto_increment</span></font><font face="新宋体"><span>, <br>
</span><span>title varchar</span><span>(</span><span>255</span></font><font face="新宋体"><span>), <br>
</span><span>author varchar</span><span>(</span><span>50</span></font><font face="新宋体"><span>), <br>
</span><span>url varchar</span><span>(</span><span>100</span><span>), </span></font><font face="新宋体"><span>/* 这里是生成静态页的地址 */ <br>
</span><span>... </span></font><span><font face="新宋体">/*其它字段*/ <br>
</font></span><font face="新宋体"><span>); <br>
<br>
</span><span>?></span> <br>
</font></span><br>
页面上你将新闻地址提取出来后就OK了..
补充:
这个URL在新闻入库的时候就要生成, 具体的过程是这样的:
1. 页面填写新闻内容, 提交表单
2. 按时间或是你自定义的格式生成URL
3. 拼接SQL语句, 将新闻内容写入数据库, 注意这时也要将URL的值写入
4. 取得模板页面内容, 按URL地址生成静态页
URL字段不会自动产生内容的...

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP 8.4 带来了多项新功能、安全性改进和性能改进,同时弃用和删除了大量功能。 本指南介绍了如何在 Ubuntu、Debian 或其衍生版本上安装 PHP 8.4 或升级到 PHP 8.4

CakePHP 是 PHP 的开源框架。它的目的是使应用程序的开发、部署和维护变得更加容易。 CakePHP 基于类似 MVC 的架构,功能强大且易于掌握。模型、视图和控制器 gu
