Как автоматически установить и приписать к контроллеру - PullRequest
0 голосов
/ 10 мая 2010

Может быть, этот вопрос не говорит само за себя, поэтому я объясню через.

Дело в том, что я получил переменную $ conn в файле класса начальной загрузки. Я хотел бы сделать его глобальным для каждого контроллера, так что мне просто нужно вызвать $ this-> conn в области действия контроллера, чтобы получить доступ к данным внутри. Как бы я это сделал?

Thx

Ответы [ 2 ]

0 голосов
/ 19 июля 2010

Мэтью Вейер О'Пинни недавно опубликовал запись в блоге с некоторыми примерами того, как использовать для этого помощников действий, см .:

http://weierophinney.net/matthew/archives/235-A-Simple-Resource-Injector-for-ZF-Action-Controllers.html

это позволит достичь того же самого безнеобходимость использования базового класса контроллера.

0 голосов
/ 10 мая 2010

Один довольно простой способ - создать собственную форму базового класса, которую наследует ваш контроллер:

<?PHP

class My_Controller_Action extends Zend_Controller_Action {
    public $conn;

    public function init(){
      //set $this->conn 
    }
}

class Some_Real_Controller extends My_Controller_Action {
    //$this->conn exists!
}

class Some_Other_Real_Controller extends My_Controller_Action {
    //$this->conn exists here too!
}
...