Accessing Bootstrap Resources from Anywhere

Aleksey V. Zapparov posts a very nice solution to a very common question when dealing with Bootstrap resources;

You can either register precious resources in registry, e.g.:

protected function _initMyResource()
$res = 'foobar';
Zend_Registry::set('myResource', $res);
return $res;

Or you can register the whole bootstrap, so you can place in it’s constructor, something like this:

public function __construct($application) {
Zend_Registry::set('Bootstrap', $this);

So later you’ll be able to access resources via:

$res = Zend_Registry::get('myResource');


$res = Zend_Registry::get('Bootstrap')->getResource('MyResource');

And there is another way to get your bootstrapper from almost

$bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
$resource = $bootstrap->getResource('MyResource');

Sincerely yours,
Aleksey V. Zapparov A.K.A. ixti

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.