Если вы хотите пойти по пути переменных среды, вы можете установить переменные среды из вашего Apache vhost.Проверьте SetEnv и SetEnvIf в документации Apache.Например, чтобы предоставить переменную среды для всех входящих запросов для данного хоста Apache:
SetEnv PROJECT_ROOT='/path/to/my/project'
. Например, Чтобы изменить значение переменной среды на основе имени хоста:
SetEnvIf Host www.example.com PROJECT_ROOT='/path/to/example/com'
SetEnvIf Host www.example.org PROJECT_ROOT='/path/to/example/org'
Другие параметрывключает автозагрузку и загрузку. Автозагрузка отлично работает для классов, но не для конфигурационных файлов, как в вашем примере.Хорошее соглашение об именах (например, PSR-0 ) значительно упростит сопоставление имен классов с именами файлов.Начальная загрузка включает в себя создание файла, который вы включаете из всех ваших скриптов, который в свою очередь загружает такие вещи, как настройки конфигурации.Начальная загрузка - отличное место для настройки автозагрузки.Таким образом, ваш загрузчик загружает конфигурацию до загрузки остальной части приложения, и вы просто предполагаете, что она присутствует в другом месте вашего приложения.