用户
 找回密码
 入住 CI 中国社区
搜索
查看: 7418|回复: 3
收起左侧

[其它 Other] [1.5.4]缓存与清除缓存

[复制链接]
发表于 2008-2-18 13:42:07 | 显示全部楼层 |阅读模式
CI的页面缓存:
$this->output->cache(15);

表示15分钟更新一次缓存.

但如果需要手工清除,只能FTP上去删除cache文件夹内的文件

如下代码可以清除指定cache:

PHP复制代码
 
$uri = $this->config->item('base_url').
       $this->config->item('index_page').
       $this->uri->uri_string();
 
//得出cache文件的文件名
$cacheName = md5($uri);
 
$this->_deleteCache($cache_name);
 
 
//删除cache文件函数
function _deleteCache($cache_name)
{      
    $path = $this->config->item('cache_path');
    $cache_path = ($path == '') ? BASEPATH.'cache/' : $path;
    $cache_path .= $cache_name;
       
    if(file_exists($cache_path))
    {
        touch($cache_path);
        unlink($cache_path);
    }else{
        return false;
    }
    echo $cache_path;
}
 
复制代码

评分

参与人数 1威望 +5 收起 理由
Hex + 5 精品文章

查看全部评分

发表于 2008-2-18 18:23:15 | 显示全部楼层
有一点我没看明白。

既然已经检查了$cache_path是否存在,为啥还要 touch() ?
发表于 2011-9-29 10:47:55 | 显示全部楼层
不太懂 不过还是多学习下
发表于 2011-10-3 13:35:04 | 显示全部楼层
file_exists和is_file哪个效率更高一点?个人觉得直接unlink是不是更直接点?

本版积分规则