• smarty缓存技术


    在PHP页面

    定义该页面缓存文件存放的路径
    $filename="../cache/cachecar{$p}.html";
    定义缓存的有效期
    $cachetime=10;

    判断缓存文件是否存在   文件上次修改时间filemtime()
    if(!file_exists($filename) || filemtime($filename)+$cachetime<time())
    {

    开启内存缓存,把页面的所有输出放到内存中
    ob_start();

    从内存缓存中获取页面代码
    $content=ob_get_contents();
    将获取到的内容存放在缓存文件
    file_put_contents($filename,$content);
    清掉内存缓存
    ob_flush();

    }
    else
    {
    include($filename);
    }

    一个分页显示的应用缓存技术的实例

    <?php
    //取当前页
    $p=1;
    if(!empty($_GET["page"]))
    {
    	$p=$_GET["page"];	
    }
    //定义该页面缓存文件存放的路径
    $filename="../cache/cachecar{$p}.html";
    //定义缓存的有效期
    $cachetime=10;
    
    //判断缓存文件是否存在  文件上次修改时间filemtime()
    if(!file_exists($filename) || filemtime($filename)+$cachetime<time())
    {
    	//开启内存缓存,把页面的所有输出放到内存中
    	ob_start();
    	include("../init.inc.php");
    	include("../DBDA.php");
    	include("../page.class.php");
    	$db=new DBDA();
    	//查总条数
    	$szs="select count(*) from car";
    	$zs=$db->StrQuery($szs);
    	//造分页对象
    	$page=new Page($zs,5);
    	$sql="select * from car ".$page->limit;
    	$car=$db->Query($sql);
    	//取分页信息
    	$xinxi=$page->fpage();
    	$smarty->assign("car",$car);
    	$smarty->assign("xinxi",$xinxi);
    	
    	$smarty->display("huancun.html");
    	
    	//从内存缓存中获取页面代码
    	$content=ob_get_contents();
    	//将获取到的内容存放在缓存文件
    	file_put_contents($filename,$content);
    	//清掉内存缓存
    	ob_flush();
    	echo "************************************";
    }
    else
    {
    	include($filename);	
    }
    

      

  • 相关阅读:
    378. Kth Smallest Element in a Sorted Matrix
    372. Super Pow
    357. Count Numbers with Unique Digits
    345. Reverse Vowels of a String
    343. Integer Break
    347. Top K Frequent Elements
    344. Reverse String
    338. Counting Bits
    326. Power of Three
    python练习
  • 原文地址:https://www.cnblogs.com/hamilton/p/5709183.html
Copyright © 2020-2023  润新知