企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
5种依赖 通过依赖关系来操作缓存到期时间 ``` //获取缓存组件 $cache=\Yii::$app->cache; //文件依赖 yii\caching\FileDependency; //$dependency=new FileDependency(['fileName'=>'test.txt']); //add()第四个参数的内容改变时,也就是$dependency变动会触发缓存到期操作;不管缓存的时间到没到,都会清除当前key的缓存 //$cache->add('file_key','Hello World1',3000,$dependency); //$data=$cache->get('file_key'); //var_dump($data); //表达式依赖 use yii\caching\ExpressionDependency; //$dependency=new ExpressionDependency([ // 'expression'=>'\Yii::$app->request->get("name")' //]); // ////add()第四个参数的内容改变时,也就是$dependency变动会触发缓存到期操作;不管缓存的时间到没到,都会清除当前key的缓存 ////返回值为false ////测试,改变test.txt里面的内容并保存,然后测试$data的值 //$cache->add('expression_key1','Hello World1',3000,$dependency); //$data=$cache->get('expression_key1'); //var_dump($data); //DB依赖 数据库依赖 use yii\caching\DbDependency; $dependency=new DbDependency([ 'sql'=>'select count(*) from demo.{{%order}}' ]); ////add()第四个参数的内容改变时,也就是$dependency变动会触发缓存到期操作;不管缓存的时间到没到,都会清除当前key的缓存 ////返回值为false ////测试,改变test.txt里面的内容并保存,然后测试$data的值 $cache->add('db_key','hello world db',3000,$dependency); $data=$cache->get('db_key'); var_dump($data); //chained依赖 链式依赖 //group依赖,组依赖 ```