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. ES索引模板——就是在新建索引时候指定的正则匹配来设置mapping而已,对于自动扩容有用

    索引模板 扩容设计 » 索引模板 Elasticsearch 不要求你在使用一个索引前创建它. 对于日志记录类应用,依赖于自动创建索引比手动创建要更加方便. Logstash 使用事件中的时间戳来生成 ...

  2. hdoj--2180--时钟(数学)

    时钟 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  3. (一)Eureka 服务的注册与发现

    (一)服务的注册于发现(eureka); Eureka Server: 服务注册中心,负责服务列表的注册.维护和查询等功能 在Idea里,新建项目,选择Spring initializer. 下面的p ...

  4. Go语言结构体转json的坑

    Go语言结构体转json的坑 标签(空格分隔): go json.Marshal() JSON输出的时候必须注意,只有导出的字段(首字母是大写)才会被输出,如果修改字段名,那么就会发现什么都不会输出, ...

  5. WPF学习(四) - 附加属性

    冷静了一晚,我就当这次学习的过程是在看狗血剧情的武打小说吧:没有垃圾的武术,只有垃圾的武者…… 还有个话儿怎么说来着:你们是用户,不是客户,也就有个使用的权力.搞清楚身份,别叽叽歪歪的! 没办法,全世 ...

  6. C# 程序集Assembly

    原谅我到目前为止一直肤浅的认为程序集就是dll,这种想法是错误的. 今天就系统的学习记录一下“程序集”的概念.原文链接https://www.cnblogs.com/czx1/p/2014131370 ...

  7. 对比学习用 Keras 搭建 CNN RNN 等常用神经网络

    Keras 是一个兼容 Theano 和 Tensorflow 的神经网络高级包, 用他来组件一个神经网络更加快速, 几条语句就搞定了. 而且广泛的兼容性能使 Keras 在 Windows 和 Ma ...

  8. Oracle12C查询自建用户(非系统自带)

      select username from dba_users where INHERITED='NO';

  9. thread.h

    https://github.com/wookayin/pintos/blob/master/src/threads/thread.h #ifndef THREADS_THREAD_H   #defi ...

  10. Java可以远程操作服务器的协议笔记

    1.SCPClient(本地复制到远程.远程复制到本地.目前未看到可以远程操作文件) 2.SMB协议(可以远程操作文件:新增.修改) 3.SFTPv3Client(可以远程操作文件:新增.修改)