Использование Zend Framework внутри Drupal - PullRequest
2 голосов
/ 23 января 2012

У меня проблема с проектом, над которым я работаю, в основном все приложение запускается в виде установки Drupal 6, и я загружаю приложение Zend Framework для извлечения нужных мне данных (которые я затем предоставлю вразличные виды с помощью модуля, который я создам).

Большинство из них работает правильно, но проблема, с которой я сталкиваюсь, связана с сеансами, фактическая ошибка, которую я получаю, заключается в следующем: -

Неустранимая ошибка PHP: необработанное исключение 'Zend_Session_Exception' с сообщением 'сеанс уже запущен session.auto-start или session_start ()'

Что, как мне кажется, происходит, потому что DrupalНастройка сеанса, а затем ZF также пытается настроить свои собственные сеансы, и они конфликтуют.Есть ли способ, которым я могу переопределить / расширить обработку Zend Session по умолчанию, чтобы позволить ему использовать API сеанса Drupal?

Спасибо

Rich

1 Ответ

2 голосов
/ 23 января 2012

Собираетесь ли вы на самом деле хранить информацию в сеансе Zend? Если нет, то вы можете полностью отказаться от запуска сеанса Zend или, по крайней мере, условно пропустить запуск сеанса Zend, если сеанс уже был запущен.

Если вы это сделаете, вы не сможете запускать или использовать какие-либо связанные с Zend_Session * функции (Zend_Session, Zend_Session_Namespace), если сеанс был ранее запущен с помощью session_start (). Кажется, нет никакого способа обойти это.

Вместо этого из своего Zend-приложения вы можете просто использовать суперглобальный $ _SESSION везде, где вам нужно использовать данные сеанса.

Это не очень поможет, но полезный справочник: Запуск сеанса в Zend .

...