Cache_Lite提供了快速,轻便和安全的缓存系统。它针对文件容器进行了优化,并且防止缓存损坏(因为它使用文件锁定和/或散列测试).

    个人感觉还是挺方便的。

Cache_Lite 官方参考地址。

Cache_Lite 缓存包下载地址。

局部缓存:

<?php
    header("content-type:text/html;charset=utf8");
    //引入Cache_Lite缓存类
    require_once('Caches/Cache/Lite.php');
    $options = array(
        'cacheDir' => '/like/',    //设置存放的目录,后面一定要加 /。(此目录要自己创建)
        'lifeTime' => 32           //缓存周期
    );
    $Cache_Lite = new Cache_Lite($options);
    if ($data = $Cache_Lite->get('block1')) {
        echo($data);
        echo "woshi block1 cache";

    } else {
        $data = 'Data of the block 1';
        $Cache_Lite->save($data);
        echo $data."没缓存";

    }
    echo "<br>";

        //测试cache是否存在  并(如果是) 返回它。
    if ($data = $Cache_Lite->get('block3')) {
        echo($data);
        echo "woshi block2 cache";

    } else {
        $data = 'Data of the block 2';
        //保存数据到一个cache 文件。
        $Cache_Lite->save($data);
        echo $data."没缓存";
    }

    //删除缓存可用如下方式:
    //$Cache_Lite->remove('block1');
    //$Cache_Lite->remove('block3');

?>

页面缓存:

<?php
    header("content-type:text/html;charset=utf8");
    //引人缓存文件。
    require_once('Caches/Cache/Lite/Output.php');
    $options = array(
        'cacheDir' => '/like/',     //设置存放的目录,后面一定要加 /。(此目录要自己创建)
        'lifeTime' => 3,             //缓存时长。
);
    //实例化对象。
    $cache = new Cache_Lite_Output($options);
    //测试是否一个cache有效 并(如果有效)返回它输出到浏览器. 否则,激    活输出缓冲.
    if (!($cache->start('isd_of_the_page'))) {
        /**
         * 没有发现cache !
         * 直到遇到end()方法 所有的输出将被缓冲进缓存区。
         * 下次会自动从缓存区取数据。
        */
        //停止由start()方法开始的输出缓冲并且保存输出到一个cache文件
        $cache->end();
    }
?>

函数缓存:

<?php
    header("content-type:text/html;charset=utf8");
    //引入方法缓存类。
    require_once('Caches/Cache/Lite/Function.php');
    $options = array(
        //缓存目录。
        'cacheDir' => '/like/',
        //缓存周期。
        'lifeTime' =>15

    );
    //方法缓存类。
    $cache = new Cache_Lite_Function($options);
    /**
     * 有缓存会直接输出缓存。
     * 没有会将缓存内的输出输出到浏览器并缓冲到缓存。
    */
    $cache->call('functions', 14, 45);
    //定义一个缓存方法。
    function functions($arg1, $arg2)
    {
        //输出内容。
        echo "This is the output of the function_to_bench($arg1, $arg2) !";

    }

    /**
     * 清除函数的缓存。不建议用,报错级别高。
     * 且还需要传递旧值,传递错误直接操作。
     * 可采用清除。
    */
    //$cache->drop('functions', 14 ,45);

?>

清洗缓存:

<?php
    header("content-type:text/html;charset=utf8");
    //引入Cache_Lite缓存类
    require_once('Caches/Cache/Lite.php');
    $options = array(
        'cacheDir' => '/like/',
        'lifeTime' => 32
    );
    $Cache_Lite = new Cache_Lite($options);
    /**
     * 清洗缓存。返回 boor 值
    */
    $Cache_Lite->clean();
?>

超轻便的 Cache_Lite 文件缓存的更多相关文章

  1. PHP文件缓存实现

    有些时候,我们不希望使用redis等第三方缓存,使得系统依赖于其他服务.这时候,文件缓存会是一个不错的选择. 我们需要文件缓存实现哪些共更能: 功能实现:get.set.has.increment.d ...

  2. 高性能文件缓存key-value存储—Redis

    1.高性能文件缓存key-value存储-Memcached 2.ASP.NET HttpRuntime.Cache缓存类使用总结 备注:三篇博文结合阅读,简单理解并且使用,如果想深入学习,请多参考文 ...

  3. [Android]异步加载图片,内存缓存,文件缓存,imageview显示图片时增加淡入淡出动画

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/3574131.html  这个可以实现ImageView异步加载 ...

  4. php使用文件缓存

    使用php读取mysql中的数据很简单,数据量不大的时候,mysql的性能还是不错的.但是有些查询可能比较耗时,这时可以把查询出的结果,缓存起来,减轻mysql的查询压力. 缓存的方法有几种:使用me ...

  5. 高性能文件缓存key-value存储—Memcached

    1.高性能文件缓存key-value存储—Redis 2.ASP.NET HttpRuntime.Cache缓存类使用总结 备注:三篇博文结合阅读,简单理解并且使用,如果想深入学习,请多参考文章中给出 ...

  6. htaccess 增加静态文件缓存和压缩

    增加图片视频等静态文件缓存: <FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf)$"> Header set Cache-Cont ...

  7. PHP文件缓存与memcached缓存 相比 优缺点是什么呢【总结】

    如果不考虑其他任何问题,只比较速度的话,那肯定是mem快,但他们各有优缺点.文件缓存优点:1.由于现在的硬盘都非常大,所有如果是大数据的时候,放硬盘里就比较合适,比如做一个cms网站,网站里有10万篇 ...

  8. app缓存设计-文件缓存

    采用缓存,可以进一步大大缓解数据交互的压力,又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不需要实时更新,哪怕是3-5分钟的延迟也是可以采用缓 ...

  9. phalcon: 缓存片段,文件缓存,memcache缓存

    几种缓存,需要用到前端配置,加后端实例配合着用 片段缓存: public function indexAction() { //渲染页面 $this->view->setTemplateA ...

随机推荐

  1. hdoj--5500--Reorder the Books(技巧)

    Reorder the Books Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Othe ...

  2. Java 定制工具库 —— Print(import static)

    创建自己的工具库以减少或消除重复的程序代码.例如,我们在Print类中,对常常用到的System.out.println()封装调用以减少输入负担.这样,我们在使用该类时,可以用一个更具可读性的 im ...

  3. (三)Fegin声明式服务调用

    上一篇,讲了SpringClound中的消费者采用Ribbon+Rest来实现,这回我们用组件Feign来实现服务的消费者,Fegin中也是默认集成了Ribbon的;和Eureka结合也能实现负载均衡 ...

  4. xBIM 实战02 在浏览器中加载IFC模型文件并设置特效

    系列目录    [已更新最新开发文章,点击查看详细]  在模型浏览器中加载模型后,可以对模型做一些特殊操作.下图是常用的设置. 都是通过 xbim-viewer.js 中的 API 来设置以达到一定的 ...

  5. android常用自动化测试框架

    目录: Monkey MonkeyRunner Instrumentation UiAutomator Espresso Selendroid Robotium Athrun Appium Monke ...

  6. Django(part3)

    URLConf:负责url到view的map,就是一个urls.py module,通常在project和app级别都要定义, #mysite/urls.py from django.conf.url ...

  7. ES6 | class类的基本语法总结

    类和模块的内部,默认就是严格模式,所以不需要使用use strict指定运行模式.只要你的代码写在类或模块之中,就只有严格模式可用. 考虑到未来所有的代码,其实都是运行在模块之中,所以 ES6 实际上 ...

  8. SpringCloud学习笔记(11)----Spring Cloud Netflix之Hystrix断路器的使用

    为什么会有断路器? 在微服务架构中,系 是拆分成 一个的服务单元各间通过注册与发现 的方式互相依 赖.每个单元都在不同的进程中运行, 都是通过远程调用的方式进行信 ,这样就有可能因为网络原或 是依赖服 ...

  9. No mapping found for HTTP request with URI [/spring_liu/hello.do] in DispatcherServlet with name 'SpringMVC'

    控制台一直报No mapping found for HTTP request with URI [/spring_liu/hello.do] in DispatcherServlet with na ...

  10. CentOS 7在grub rescue模式中修复系统

    安装完CentOS 7后 修改硬盘分区后,系统重启后,无法正常启动,进入grub rescue模式: 网上大多数centos grub rescue的资料应该是Centos 7之前的,其中提到的命令很 ...