No Matthew, you don't have to subclass to have multiple registry instances. The intention is that _if_ you use a subclass of Zend_Registry, you can specify the class name to use for the static default instance.
In the old Zend.php design, the default registry was stored as a static member in the Zend.php class. But there's no reason it can't live as a static member within the Zend_Registry class instead. Zend_Registry isn't a true singleton; you can still instantiate it as an object and store the object somewhere yourself. You don't even need to use the static methods at all! But in addition to being instantiated, the class also provides a static location where you can access one default instance of a registry object through static methods, so you don't have to make a global location to store your registry instance. Also consider that a registry can store objects -- even objects of type Zend_Registry. So you can have multiple instances of Zend_Registry, each of which are stored as entries within the default Zend_Registry instance. But this is a good way to get yourself confused. :-) Regards, Bill Karwin > -----Original Message----- > From: Matthew Ratzloff [mailto:[EMAIL PROTECTED] > Sent: Wednesday, March 07, 2007 9:30 AM > To: Zend Framework > Subject: Re: [fw-general] Zend.php proposal > > It's the same difference. Either way, a custom registry is required for > that use case. > > -Matt > > > In the wiki it reads: Redesign Registry methods to store the singleton > > object as a static variable in the Zend/Registry.php class. Allow app to > > specify which class to use for the singleton, to allow subclassing. > > > > The way I look at it you don't have to extend Zend_Registry to use > > multiple instances. All it says is that if you want the ZF to use your > > own registry you can tell it to do so. > > > > On 3/7/07, Matthew Ratzloff <[EMAIL PROTECTED]> wrote: > >> > >> Hi Bill, > >> > >> > I've updated the proposal page started by Gavin and Andries with yet > >> > another proposed solution, "Solution E". I populated the class > >> > skeletons to illustrate this solution. I would prefer Solution E (of > >> > course :-). > >> > > >> > http://framework.zend.com/wiki/x/j1 > >> > >> So if you want to have multiple registries in one application (for > >> different areas of control), you need to extend Zend_Registry. Well... > >> it's an edge case, so I can live with that.
