Как передать переменные в Bootstrap.php - PullRequest
1 голос
/ 13 октября 2010

Есть ли способ передать переменные в Bootstrap.php? Вот как я загружаю в index.php:

// let's go!
$application = new Zend_Application(APPLICATION_ENVIRONMENT,
                                    APPLICATION_PATH.'/configs/application.ini');

try {
    $application->bootstrap();
    $application->run();
} catch (Exception $exception) {
    echo $exception->getMessage();
    exit(1);
}

В одном методе моего класса Bootstrap.php мне нужно иметь доступ к некоторым переменным из index.php, и использование $ GLOBALS просто ужасно:

protected function _initFilePathConverter()
{
    require_once (PATH_TO_LIB_UTIL.'/FilePathConverter.php');
    $this->aFilePathConverter = new FilePathConverter();
    $this->aFilePathConverter->AddPathPairs($GLOBALS['REAL_PATHS'], $GLOBALS['HTTP_PATHS']);
}

Ответы [ 2 ]

3 голосов
/ 13 октября 2010

Вы можете использовать Zend_Registry .

например. в index.php вы можете сказать:

Zend_Registry::set('Real_Paths', array('my', 'paths'));

Убедитесь, что вы делаете это после того, как создали объект Zend_Application, чтобы автозагрузчик Zend был инициализирован. А потом в начальной загрузке:

$real_paths = Zend_Registry::get('Real_Paths');
0 голосов
/ 13 октября 2010

Попробуйте это:

index.php

<?

$testvar = 'testing';

?>

bootstrap.php

protected function _initFilePathConverter()
{
    global $testvar;
    echo $testvar;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...