Один метод, который я нашел полезным для передачи ограниченного числа глобальных переменных в скрипт начальной загрузки, - это использование директивы SetEnv в файле .htaccess. Преимущество заключается в том, что указанная переменная будет доступна для любого сценария в этом каталоге, а также для любых сценариев в дочерних каталогах под ним.
Вы можете использовать переменную SetEnv с расположением файла конфигурации, например:
в .htaccess:
SetEnv init_path /home/hendepher/TestApp/init/init.php
В вашем .php scipt:
<?php
if(!getenv('init_path')) throw new Exception('Must set init_path in .htaccess');
require_once getenv('init_path');
.
.
.
?>
Если у вас есть тестовый каталог, который требует другой инициализации или глобальных переменных, просто добавьте другой файл .htaccess в свой тестовый каталог:
SetEnv init_path /home/hendepher/TestApp/init/testing_init.php
В отличие от использования директивы auto_prepend_file, этот способ заключается в том, что ваш скрипт глобальной конфигурации не запускается всеми приложениями php на вашем сервере: некоторым это может не понадобиться.