У нас есть приложение Zend Framework 2, которое не работает в нашей тестовой среде в Zend\ServiceManager\ServiceManager->createFromFactory()
"недопустимый завод был зарегистрирован для этого типа экземпляра". Мы указали это на class_exists()
который не прошел тест, передавая его в процессе разработки.
Код такой же, как и для разработки. В обеих средах работает Ubuntu 12.04 и несколько разные версии PHP 5.3.10. Мы попытались отключить xcache, но это не помогает.
Что может привести к тому, что эти очень похожие среды будут генерировать разные результаты для class_exists()
? Остальное приложение работает нормально, только этот вызов для одной конкретной фабрики терпит неудачу. Пространства имен и конфигурации были дважды проверены.
Решено. Имя класса не соответствовало случаю имени файла. Я не уверен, почему это происходит между двумя дистрибутивами Ubuntu.