2012-01-23 93 views
2

我遇到了一个我正在开发的项目的问题,基本上整个应用程序都是作为Drupal 6安装运行的,而且我引导了一个Zend Framework应用程序来提取我需要的数据(我然后将通过我将创建的模块在各种视图中提供)。在Drupal中使用Zend Framework

我有广大的这个正常工作,但我遇到的问题是会议,我得到的实际误差如下: -

PHP Fatal error: Uncaught exception 'Zend_Session_Exception' with message 'session has already been started by session.auto-start or session_start()'

我认为这是发生,因为Drupal是设置然后ZF也试图建立自己的会议,他们正在发生冲突。有没有一种方法可以覆盖/扩展默认的Zend Session处理,让它使用Drupal Session API?

感谢

丰富

回答

2

你打算在Zend的会议实际上是存储信息?如果不是的话,你可以不用完全启动一个Zend会话,或者如果会话已经启动,至少有条件地跳过启动Zend会话。

如果你这样做了,如果会话以前是以session_start()开始的,你将不能启动或使用任何与Zend_Session *相关的​​函数(Zend_Session,Zend_Session_Namespace)。似乎没有任何解决方法。

相反,从您的Zend Application,您可以在需要使用会话数据的任何位置使用$ _SESSION超全局。

这不会有太大帮助,但有用的参考是Starting a session in Zend

+0

不开始会话的想法听起来像一个选项,但我不确定Zend_Session是否将用于Zend Framework的引导版本,我主要感兴趣的是访问模型和读取/写入数据和从他们。 – bagwaa