2015-01-26 12:58:00 15382次浏览 1条回答 5 悬赏 10 金钱

要用哪个缓存组件,怎么使用,我看了下指南,但弄不了。

最佳答案

  • 大裤衩子 发布于 2015-01-28 11:25 举报

    首先配置一下缓存,自己选择是用文件缓存还是数据库缓存等。

    'cache'         => [
                'class' => 'yii\caching\FileCache',
            ],
    

    然后就可以通过 Yii::$app->cache->set()Yii::$app->cache->get() 设置、获取缓存内容了。
    下面是一个带缓存依赖的实例:

    //表达式依赖  
    $dp = new ExpressionDependency([
                    'expression' => 'count(Yii::$app->authManager->getPermissionsByUser(Yii::$app->user->id))'
                ]);
    //数据库依赖(sql)  
                $dp2 = new DbDependency([
                    'sql' => 'select max(updated_at) from auth_item',
                ]);
    //链式依赖(把以上2个依赖串起来,任何一个发生变化都会使缓存失效)  
                Yii::$app->cache->set($key, $value, 0, new ChainedDependency([
                    'dependencies' => [$dp, $dp2]
                ]));
    
    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
师阳
副总裁

师阳 无锡

注册时间:2013-06-10
最后登录:2022-12-09
在线时长:62小时57分
  • 粉丝52
  • 金钱4731
  • 威望220
  • 积分7551

热门问题