zoukankan      html  css  js  c++  java
  • php缓存

    php缓存的方法有很多,最简单的缓存方法就是使用框架。

    先说一下smarty的方法:

    首先设置缓存文件位置:

    1
    $filename "../cache/huancun.html"//缓存文件存放的位置

    设置缓存间隔:

    1
    $time = 10; //缓存有效期10秒

    判断缓存文件是否存在,如果缓存文件存在直接调用缓存,如果缓存文件不存在重新缓存:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if(file_exists($filename) && ((filemtime($filename)+$time)>= time()) )
    {
        //直接调用缓存
        include($filename);
    }
    else
    {
        //重新缓存
        ob_start(); //开启内存缓存
         
        代码部分。。。。。。。<br>     <br><br>     $smarty->display("huancun.html"); 

                  $str = ob_get_contents(); //获取内存中的缓存内容
                  file_put_contents($filename,$str);

    1
    2
    3
        ob_flush(); //关闭内存缓存
         
    }

     如果要使用分页缓存的话需要修改为:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <?php
    $p = 1;
    if(!empty($_GET["page"]))
    {
        $p $_GET["page"];
    }
     
    $filename "../cache/huancun{$p}.html"//缓存文件存放的位置
     
    $time = 10; //缓存有效期10秒
     
     
     
    //判断缓存文件是否存在,如果缓存文件存在直接调用缓存,如果缓存文件不存在重新缓存
    if(file_exists($filename) && ((filemtime($filename)+$time)>= time()) )
    {
        //直接调用缓存
        include($filename);
    }
    else
    {
        //重新缓存
        ob_start(); //开启内存缓存
         
        分页代码。。。。。。。。。
     
     
        $smarty->display("huancun.html");
         
        $str = ob_get_contents(); //获取内存中的缓存内容
        file_put_contents($filename,$str);
         
        ob_flush(); //关闭内存缓存
         
    }

     同理,如果没有使用smarty模板。只要将ob_start()与ob_flush()之间的代码修改为普通php代码即可。

  • 相关阅读:
    python网络爬虫——scrapy核心组件介绍、请求传参、下载中间件
    python网络爬虫——Scrapy全站数据爬取【手动请求发送】及post请求的发送
    python网络爬虫——scrapy框架持久化存储
    php常见排序
    php实现快速排序
    mysql读写分离 主从同步
    php预定义字符
    本地Navicat连不上Linux虚拟机MySQL数据库问题
    php yii 命令
    yii 定义场景
  • 原文地址:https://www.cnblogs.com/xiaoming-6/p/6557821.html
Copyright © 2011-2022 走看看