我找到了如何获得这样的会话容器:$ session = new\Zend\Session\Container('base');
但是,如果我需要在处理HTTP请求期间在许多地方访问会话,该怎么办呢?让我们说在IndexController中的Application模块的indexAction中,然后我将它重定向到User\Controller\IndexController并需要再次访问会话,然后在一个或两个视图帮助器中,谁知道多少次.
每次重新构造会话容器时,这都是浪费处理时间.是的,我调试它以查看构造函数中发生了什么,是的,在幕后执行了一些代码.它不像构造函数只返回一个全局变量或其他不可变的并且不需要构造过程的东西.
那么该怎么办?我应该为它创建服务吗?一个控制器插件?一个助手?服务和控制器插件以及视图助手,后者调用服务?
我敢肯定这是许多人必须遇到并且已经处理过的事情,但我找不到任何有关此事的信息.
任何提示都非常感激.提前谢谢了!:-)
是否可以通过classmap和autoloader覆盖框架类的类文件位置?如果是,那怎么样?
示例:我想覆盖Zend\Form\Fieldset,以便在框架中引用Zend\Form\Fieldset的任何地方,我希望它使用我自己的类文件而不是原始文件.
动机:更新框架时,我希望保护我的修改不被覆盖.
已知替代方案:修改框架中的代码.缺点:更新框架时修改会丢失.