Zend Framework – precisa acessar um parâmetro GET de uma visualização

HI guys – Estou usando o framework Zend e o que eu preciso é construir um URL na minha opinião. Normalmente, em código regular de php, eu apenas agarrava a Variável GET usando o $ _GET global. No entanto, com o Zend, estou configurando-o para limpar URIs, então:

? ac = list & filter = works & page = 2

Parece index / ac / list / filter / works / page / 2

Na minha opinião, eu estou configurando links cs, de modo que, se o filtro de variável GET for igual, a cor desse link seria diferente e aponta para a mesma página apenas vinculada assim:

index / ac / list / filter / extra / page / 2

E, como sábio, tenho uma série de outros links, todos os quais apenas um valor GET – como faço para configurar isso – Im usando o framework Zend …

Para acessar uma variável de solicitação direta na visualização, você pode fazer:

Zend_Controller_Front::getInstance()->getRequest()->getParam('key'); 

Mas como outros disseram, esta não é uma boa idéia. Pode ser mais fácil, mas considere outras opções:

  • defina a variável de exibição no controlador
  • escreva um auxiliar de visualização que puxa a variável do object de solicitação

Se você precisa acessar um parâmetro GET de uma visão, acho que você está fazendo o caminho errado.

Sugiro que você configure uma rota com todos os seus parâmetros e, em seguida, use $this->url de sua visualização para renderizar uma URL válida e correta.

Para mais informações, confira a seguinte postagem no blog (não, eu não sou o autor): http://naneau.nl/2007/07/08/use-the-url-view-helper-please/

Editar:

Se você quiser ser “preguiçoso”, você pode configurar um parâmetro de exibição do seu controlador fazendo $this->view->param = $this->_getParam('param') . Você pode então acessar o param da sua visão fazendo echo $this->param; . No entanto, eu não recomendo isso.

Você pode passá-lo de um controlador: $this->view->page = $this->_getParam('page'); .

Nota de rodapé: concordo com @alexn.