Ошибки config_cache_enabled
Использование Zend Framework 2.1
Когда я установил 'config_cache_enabled' => true
внутри моего application.config.php
Он возвращает следующую ошибку:
Warning: var_export does not handle circular references in /usr/local/apache/vhosts/otwebsoft_admin/vendor/Zend/ModuleManager/Listener/AbstractListener.php on line 67
После нескольких обновлений страницы я получаю следующее:
Fatal error: Call to undefined method Zend\Cache\Storage\Adapter\Apc::__set_state() in /usr/local/apache/vhosts/otwebsoft_admin/data/cache/module-config-cache.otwebsoft.php on line 181
Теперь я вижу, что файл создан на сервере. Конечно, установка значения обратно в false в конфигурации удаляет все ошибки. Но теперь у нас потеря функциональности кеширования.
Да, я использую адаптер APC для своего кэша.
Чтение документации PHP рекомендует использовать сериализацию. Поэтому я посмотрел на исходный код и изменил var_export для сериализации, и это удаляет эту ошибку, но возвращает 2-ю ошибку, указанную здесь.
Есть идеи?
1 ответ
Я наконец понял это. Я не знаю, почему это заняло у меня так много времени, но теперь все имеет смысл.
Таким образом, закрытие будет что-то вроде:
'example' => factory()
{
return new Example();
}
Где-как я должен использовать (например):
'example' => 'Module/Service/Example'
После того, как я удалил все замыкания, я теперь могу использовать
'config_cache_enabled' => true