2017-10-12 58 views
0

如果Yii2我使用多緩存和在我的main.php這樣的代碼:在緩存片段Yii2多組件的緩存

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

它們之中哪一個使用?我該如何改變它? (例如我用FileCache什麼緩存架構的內存緩存和片段。

$this->cacheBegin('some_key') 

回答

0

緩存片段使用yii\widgets\FragmentCache類默認使用的組件與「緩存」標識。

因此在全球範圍內改變這一點,你可以使用在DI容器:

裏面你的index.php(入口腳本),你包括Yii的類文件後

require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php'); 

添加以下行(REPL ace'fragmentCache'以及任何需要的緩存組件ID):

\Yii::$container->set('yii\widgets\FragmentCache', ['cache' => 'fragmentCache']);