首先在main文件夹里面建一个文件 huancun.php   然后在template文件夹里面建一个文件 huancun.html  

huancun.php中的内容为:

require("../init.inc.php");
require("../DBDA.class.php");; $db = new DBDA(); $sql="select * from nation ";
$arr=$db->Query($sql); $smarty->assign("arr",$arr);
$smarty->display("huancun.html");

huancun.html中的内容为:

<table width="100%" cellpadding="0" cellspacing="0" border="1">
<tr>
<td>代号</td>
<td>名称</td>
<td>操作</td>
</tr>
<{foreach $arr as $v}>
<tr>
<td><{$v[0]}></td>
<td><{$v[1]}></td>
<td><a href="shanchu.php?code=<{$v[0]}>">删除</a>
<a href="xiugai.php?code=<{$v[0]}>">修改</a> </td>
</tr>
<{/foreach}> </table> <a href="tianjia.php">添加</a>

在这个基础上 我要建立一个缓存文件,那么就要在huncun.php中做修改了,同时也在其基础上做了分页的缓存处理

<?php
//定义当前位置所在的页数
$p=1;
if(!empty($_GET["page"]))
{
$p=$_GET["page"];
} //定义一个缓存页面的位置,通常放到cache文件中
$filename="../cache/huancunpage{$p}.html"; //定义缓存的时间 filemname 指的是缓存文件的修改时间
$tj=10; //判断当前页面是否需要缓存
if(file_exists($filename)&&filemtime($filename)+$tj>=time())
{
//如果存在缓存页面 就显示缓存
include($filename);
}
else{
//重新生成缓存
ob_start();//开启缓存 require("../init.inc.php");
require("../DBDA.class.php");;
require("../page.class.php"); $db = new DBDA();
$ztss = "select count(*) from nation";
$zts = $db->StrQuery($ztss); $page = new Page($zts,5); $sql="select * from nation ".$page->limit;//注意一下nation后面的空格 这个空格是必须要有的
$arr=$db->Query($sql); $smarty->assign("page",$page->fpage());
$smarty->assign("arr",$arr);
$smarty->display("huancun.html"); $str=ob_get_contents();//从内存中获取内容
file_put_contents($filename,$str);//把获取到的内容放到缓存文件里边
ob_flush();//清除缓存 echo"######"; //这里是为了测试是不是有缓存 }

smarty的缓冲的更多相关文章

  1. smarty实现缓存

    首先需要在mySmarty中添加配置信息,开启缓存,设置缓存文件存放目录,设置缓存时间缓存可以实现减少访问数据库,减轻数据库压力,访问一次数据库,形成静态页面,下次直接调用这个页面,也可以用nocac ...

  2. 【转】php缓冲 output_buffering和ob_start

    原文: http://blog.csdn.net/21aspnet/article/details/7389427 php缓冲 output_buffering和ob_start buffer buf ...

  3. PHP做Web开发的MVC框架(Smarty使用说明 )

    PHP做Web开发的MVC框架(Smarty使用说明 ) 一.Smarty简明教程 1.安装演示 下载最新版本的Smarty-3.1.12,然后解压下载的文件.接下来演示Smarty自带的demo例子 ...

  4. PHP扩展功能 ---- 页面静态化(OB缓冲)

    一.入门三部曲 1.什么是页面静态化 百度百科介绍: 静态页面是网页的代码都在页面中,不需要执行asp,php,jsp,.net等程序生成客户端网页代码的网页,静态页面网址中一般不含"?&q ...

  5. 创建 Smarty 对象

    /* //if (!defined('INIT_NO_SMARTY')) //{ header('Cache-control: private'); header('Content-type: tex ...

  6. Smarty的基本使用与总结

    含义: Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来. 环境需求:PHP5.2或者更高版本 我使用的环境是:PHP5.3,wi ...

  7. ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案

    好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...

  8. C++双缓冲多线程分析大文件词频

    实习生活告一段落,我正式从一名.NET程序员转入Java阵营,不得不说刚开始用Java的东西是多么的不习惯,但是经过三个月的使用与开发,我也发现了Java的优势:不在于语言,而在于开源.这意味着有更多 ...

  9. mysql的缓冲查询和非缓冲查询

    最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的 ...

随机推荐

  1. 2431: [HAOI2009]逆序对数列

    2431: [HAOI2009]逆序对数列 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 954  Solved: 548[Submit][Status ...

  2. canvas的使用

      1.概念 canvas一般就是用来绘制图像的     2.基本知识 上下文对象   var canvas = doucment.getElementById("canvas") ...

  3. JavaGUI版本销售管理系统

    不知不觉中,本科阶段已经走过两个年头,诸多感慨,诸多向往,周遭的人和事物在不断的改变着,自己的目标也在不断改变,总之,世界一直在快速的发生着变化,快到我们无法捕捉,总的来说,过得很潇洒,就等考上研究生 ...

  4. SolrCloud的介绍

    SolrCloud(solr云)是Solr提供的分布式搜索方案. 当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud. 当索引量很大,搜索请求并发很高时,同样需要使用SolrClou ...

  5. 当git上文件大小写重命名的修改时(git大小写敏感/默认不敏感),如何提交

    git默认是大小写不敏感!!! 加了感叹号是什么意思呢,意思就是这本身就是一个坑,本人使用的IDE是idea(网上说Eclipse可以避开问题),这个IDE本身就集成了git,但是如果要在termin ...

  6. 打印时鼠标键盘移动的div创建

    function createDiv(id, label, offset_left, offset_top) { $("body").append($("<div& ...

  7. mac开发环境配置

    折腾了好几天了,终于安装一部分了,mac装的win10,太占空间了,看到学习资源使用的工具,自己搜了一下安装了,在学习使用git的时候,都说mac比win好用多了,我tm为啥抱着mac装win费劲呢! ...

  8. Chrome 33+ 自建 扩展 实现 custom.css

    http://bbs.kafan.cn/thread-1674386-1-2.html

  9. css3特效

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  10. 机器学习:Python实现lms中的学习率的退火算法

    ''' 算法:lms学习率的退火算法 解决的问题:学习率不变化,收敛速度较慢的情况 思路:由初始解和控制参数初值开始,对当前解重复进行"产生新解-->计算目标函数差--> 接受或 ...