| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- <?php
- namespace saas\controllers;
- use Yii;
- use common\components\util;
- use common\components\configDict;
- class CleanCacheController extends PlatformController{
- public function actionIndex(){
- $cacheKeys = configDict::$cacheKey;
- $i = 1;
- foreach ($cacheKeys as $keyName => $redisKey){
- $newCacheKeys[] = ['id'=>$i, 'keyName'=>$keyName];
- $i++;
- }
- return $this->render('index', ['cacheKeys'=>$newCacheKeys]);
- }
- /**
- * 删除模糊匹配的所有键
- */
- public function actionAllClean(){
- $keyName = Yii::$app->request->get('keyName');
- $cacheKeys = configDict::$cacheKey;
- if(!key_exists($keyName, $cacheKeys)){
- util::failInfo($keyName.'缓存键不存在');
- }
- $redisKey = $cacheKeys[$keyName].'*';//模糊匹配所有的键
- $allKeys = Yii::$app->redis->keys($redisKey);
- foreach ($allKeys as $key){
- Yii::$app->redis->executeCommand('DEL', [$key]);
- }
- util::successInfo($keyName.'匹配的缓存键清除完成', 'success');
- }
- public function actionKeysList(){
- $keyName = Yii::$app->request->get('keyName');
- $cacheKeys = configDict::$cacheKey;
- if(!key_exists($keyName, $cacheKeys)){
- util::failInfo($keyName.'缓存键不存在');
- }
- $redisKey = $cacheKeys[$keyName].'*';//模糊匹配所有的键
- $allKeys = Yii::$app->redis->keys($redisKey);
- return $this->render('keys-list', ['allKeys'=>$allKeys]);
- }
- /**
- * 指定删除单个键
- */
- public function actionSingleClean(){
- $key = Yii::$app->request->get('key');
- $exist = Yii::$app->redis->executeCommand('EXISTS', [$key]);
- if($exist){
- Yii::$app->redis->executeCommand('DEL', [$key]);
- util::successInfo($key.'缓存键清除成功', 'success');
- }
- util::failInfo($key.'缓存键不存在', 'error');
- }
- }
|