Мы строим несколько приложений вокруг одной установки Codeigniter (v2.0.3).Мы начали разработку в среде Windows (с использованием XAMPP) и развернули нашу альфа-установку на виртуальной машине CentOS 5.6 (которая отлично работает).По мере развития проекта мне стал нужен доступ к видеоинструментам (ffmpeg / mencoder), которые (практически) недоступны в Windows.Я использовал виртуальную установку CentOS 5.7 (запущенную в VirtualBox 3.2.8) для разработки других приложений, поэтому я установил программное обеспечение на эту виртуальную CentOS.Мы добавили несколько библиотек в папку «Codeigniter / system / library», чтобы они были доступны для всех различных приложений.На моем локальном виртуальном CentOS наши основные библиотеки не загружаются, мы получаем сообщение об ошибке, в котором говорится, что классы не существуют.Пути существуют, и мы можем прочитать их содержимое, и include_once не выдает ошибку ... они просто не будут работать.
Мы отследили включение основных библиотек и обнаружили, что наша библиотека былазагружается в «system / core / Loader.php» по строке 886 через «include_once».После долгих изменений мы определили, что если мы изменили этот «include_once» на «include», файл был включен, и весь программный пакет работал точно так, как ожидалось (точно так же, как и в других системах).
Какого черта?Нужно ли включать "include_once" где-нибудь в конфиге PHP?Путь, очевидно, правильный, так как «include» работает.У меня просто нет никакого желания менять системное ядро CI, если в этом нет полной необходимости.
Любой вклад (или даже разумные предположения) приветствуется.Приветствия.