Hi Matthew,
init() happens at object instantiation, which happens before
preDispatch() -- it's basically provided so that you don't need to
override the constructor, and thus possibly forget to set the request,
response, and other parameters (as you discovered the hard way).
It does seem like
In other words it will need to be a warning. That is where I feel
that init() is unintuitive and most people (I say with hesitation
being a self elected representative) would expect to go with the
constructor for this task.
Why not declare Zend_Controller_Action::__construct() as final?
Hi Matt,
Yes, that would stop people possibly forget[ing] to set the request,
response, and other parameters, however, it would also mean closing
off the constructor completely and replacing it's initialisation
functionality with the init() method. All that is done because the
response