Применим ли namespace к файлам, которые находятся выше корня сайта?

Например, чтобы скрыть всякие ini файлы словарей, конфиги, контроллеры, модели и т.д. за пределами корня сайта.
Можно ли тут применять namespace с автозагрузкой и если можно то как?

Какие вообще файлы следует прятать за пределы корня сайта и как их вызывать, если у тебя есть функция автозагрузки?
  • Вопрос задан
  • 2310 просмотров
Решения вопроса 1
DevMan
@DevMan
Автолоад работает с путями, ему без разницы находится этот путь в корне сайта или нет.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
benbor
@benbor
Помог ответ - не забудь лайкнуть
Да, можно - symfony2 именно так работает - корень сайта папка web, а весь код в соседней папке
Ответ написан
Комментировать
He11ion
@He11ion
PHP-monkey
Очень тупой ответ - если сам пишешь функцию автолоада, то тебе и решать как искать по неймспейсам.

Файлы вообще желательно не цеплять автозагрузкой из мест, в которых не предполагается кода (т.е. белый список папочек лучше всего). Нормально для статики выделять свой раздел, для файлов сайта свой, а для общих (фреймворки/библиотеки) - отдельный раздел, общий для всех.
Ответ написан
Комментировать
thestump
@thestump
программист PHP
Те которые инклудятся можно оставить без наймспейса если нет на него отдельной необходимости (например на разные нейспейсы разные конфиги в одном файле и т.п.). А в файлах модели наверное без неймспейсов будет немного неудобно. В модели я бы оставил неймспейсы. Автолоад с нейспейсами удобно создать с помощью spl.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы