yii2缓存的5种依赖方式:
1:DbDependency
将SQL语句直接作为依赖条件。当数据库查询出的内容发生变化时候,缓存即会受到影响。
$cache = Yii::$app->cache;
$dependency_sql = 'SELECT COUNT(*) FROM table ' ; //依赖sql文的select必须只能是一个值
$dependency = new DbDependency( ['sql' => $dependency_sql] );
$cache->set('cacheName', 'cacheValue', 3600, $dependency);//$cache->set(缓存key, 缓存value, 缓存失效时长, 缓存依赖);缓存失效时长为false时,表示永远不失效
$cache->get('cacheName');//获取指定缓存的值
2:ExpressionDependency
指定的 PHP 表达式执行结果发生变化,则缓存变化,这里的表达式为整个PHP,而不局限于Yii。
$dependency = new \yii\caching\ExpressionDependency(['expression'=>\Yii::$app->request->get("id")]);
$cache-&g