Zend Framework: как вызвать пользовательскую функцию, созданную в начальной загрузке? - PullRequest
0 голосов
/ 07 октября 2010

Я использую Zend Framework v 1.10

Я создал пользовательскую функцию в файле начальной загрузки:

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{

    public function init(){   }

    public function helloworld(){ echo 'hello';}
}
?>

Как мне вызвать функцию helloworld () из Action вКонтроллер индекса?

Любая помощь будет оценена.

Спасибо

Ответы [ 3 ]

5 голосов
/ 07 октября 2010
$this->getFrontController()->getParam('bootstrap')->helloworld();

должно работать. Но я не могу придумать причину, по которой вы захотите сделать это - загрузчик предназначен для инициализации ресурсов приложения, его работа выполняется задолго до того, как в него вмешаются контроллеры. Возможно, все, что вы делаете в методе, должно быть ресурсом или плагином контроллера?

0 голосов
/ 04 июля 2011

Любой может вызвать функцию в классе начальной загрузки без создания какого-либо объекта класса.Bootstrap автоматически вызывает пользовательские функции, в качестве префикса которых используется ключевое слово _init.Такие как:

public function _initIndia() { 
     echo 'Proud to be an Indian'; 
}
0 голосов
/ 07 октября 2010

Любые общедоступные функции, которые вы создаете в начальной загрузке, начинающиеся с _init, будут автоматически вызываться кодом начальной загрузки.Например:

public function _initHelloWorld() { echo 'hello'; }
...