yii2数据缓存示例

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

'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]
            ]));

发表评论

电子邮件地址不会被公开。 必填项已用*标注