Ccache

Olá Pessoal, estou tentando utilizar as funcções:


$valor = Yii::app()->cache->get($key);


Yii::app()->cache->set($key, $translate, 300);

quando uso estas funções o sistema me retorna Fatal error: Call to a member function get() on a non-object

Alguém já passou por isso e sabe o que está faltando?

Rafael,

Você ativou algum cache nas configurações?

http://www.yiiframework.com/doc/guide/1.1/pt/caching.overview

Eu havia ativado com a seguinte configuração:


	    

'cache'=> array(

	        'class'=> 'CMemCache',

	          'servers'=>array(

	            array('host'=>'localhost', 'port'=>11211, 'weight'=>500),

	          ),

	    ),	



Mas quando eu ativo ele gera o erro:




CMemCache requires PHP memcache extension to be loaded.



Alguém já conseguiu fazer funcionar esse componente de cache? É preciso configurar alguma coisa no php?

Olá Rafael,

Existem diversos tipos de cache que você pode utilizar, a maioria deles realmente possui a necessidade de instalar módulos no servidor. Eu particularmente utilizo o File Cache onde o gerenciamento de cache é realizado através de arquivos no servidor, para mim funciona muito bem, para utilizá-lo realize a seguinte configuração em seu main.php dentro da array "components"

    // application components





'components'=>array(


	





	'cache'=>array(


		'class'=>'system.caching.CFileCache',


	),





    ...

Obrigado. Vou testar o FileCache. O erro ocorreu devido a um problema de versão de compilação da extensão php_memcache.dll . Atualizei está dll e o problema foi resolvido.