2016-12-11 17:54:32 2246次浏览 0条回答 0 悬赏 10 金钱

我最近在学习在yii2项目中使用memcached,我看到yii2官方文档数据缓存中说可以注册多个缓存组件,那么该如何在配置文件中指定各个要注册的组件,又如何调用注册的各个组件呢?比如,我想使用yii2的FileCache和Memcache。那么我在main.php中该如何配置呢?我试了下这么配置:

    'components' => [
        'cache' => [
            'class' => 'yii\caching\FileCache',
            'cachePath' => '@runtime/cache2'
        ],
        'memcache' => [
            'class' => 'yii\caching\Memcache',
            'servers' => [
                'host' => 'server1',
                'port' => 11211,
                'useMemcached' => true,
            ],
        ],
    ],

然后在控制器里,测试下:

        echo '<pre>';
        print_r(Yii::$app->cache); exit;

结果只有yii\caching\FileCache Object。
那么,我该调用获得我在main.php中配置的memcache呢?

补充于 2016-12-11 18:16

是我自己写的配置有问题,应该这么写:

    'components' => [
        'cache' => [
            'class' => 'yii\caching\FileCache',
            'cachePath' => '@runtime/cache2'
        ],
        'memcache' => [
            'class' => 'yii\caching\Memcache',
            'useMemcached' => true,
            'servers' => [
                [
                    'host' => 'localhost',
                    'port' => 11211,

                ],
            ],
        ],
    ],
    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
yangtoude
职场新人

yangtoude 北京

注册时间:2016-03-20
最后登录:2017-04-08
在线时长:4小时46分
  • 粉丝1
  • 金钱40
  • 威望0
  • 积分80

热门问题