O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
deny from all<br />
Componentes da Aplicação<br />
As funcionalidades da aplicação podem ser facilmente customizadas e enriquecidas<br />
graças à arquitetura flexível de componentes. A aplicação gerencia um conjunto de<br />
componentes, que implementam recursos específicos. Por exemplo, a aplicação realiza<br />
um pedi<strong>do</strong> de um usuário com a ajuda <strong>do</strong>s componentes CUrlManager e CHttpRequest.<br />
Ao configurar as propriedades <strong>do</strong>s componentes da aplicação, podemos personalizar a<br />
classe e os valores das propriedades de qualquer componente usa<strong>do</strong> na aplicação. Por<br />
exemplo, podemos configurar o componente CMemCache para que ele possa utilizar<br />
múltiplos servi<strong>do</strong>res de memchache para fazer o caching:<br />
array(<br />
......<br />
'components'=>array(<br />
......<br />
'cache'=>array(<br />
'class'=>'CMemCache',<br />
'servers'=>array(<br />
array('host'=>'server1', 'port'=>11211, 'weight'=>60),<br />
array('host'=>'server2', 'port'=>11211, 'weight'=>40),<br />
),<br />
),<br />
),<br />
)<br />
Acima, adicionamos o elemento cache ao array components. O elemento cache indica a<br />
classe <strong>do</strong> componente, que é CMemCache e sua propriedade servers deve ser<br />
inicializada como no exemplo.<br />
Para acessar um componente da aplicação, use <strong>Yii</strong>::app()->ComponentID, onde<br />
ComponentID refere=se ao ID <strong>do</strong> componente (ex.: <strong>Yii</strong>::app()->cache).<br />
Um componente da aplicação pode ser desativa<strong>do</strong> setan<strong>do</strong> a propriedade enabled para<br />
false na configuração. O valor Null é retorna<strong>do</strong> quan<strong>do</strong> um componente desativa<strong>do</strong> é<br />
acessa<strong>do</strong>.<br />
Dica: Por padrão, os componentes da aplicação são cria<strong>do</strong>s sob demanda. Isto<br />
significa que um componente pode não ser completamente cria<strong>do</strong> se não for acessa<strong>do</strong><br />
durante uma requisição de um usuário. Consequentemente, o desempenho global não<br />
será prejudica<strong>do</strong>, mesmo em uma aplicação com muitos componentes. Alguns<br />
componentes da aplicação (ex.: CLogRouter) necessitam serem cria<strong>do</strong>s, não<br />
importan<strong>do</strong> se estão sen<strong>do</strong> acessa<strong>do</strong>s ou não. Para fazer isso, liste os IDs na<br />
propriedade preload da aplicação.