2016-08-10 2 views
0

У меня есть существующий веб-проект PHP, работающий под XAMPP, и он убирал его до развертывания, чтобы сделать его более безопасным и простым в обслуживании. Одним из таких шагов был переместить некоторые ключевые переменную в файл config.php аналогичен PHP Site TemplatesОпределение пути PHP к config.php

Я поместил файл config.php в папке ресурсов, как показано здесь

enter image description here

теперь я попытка включить конфигурационный файл следующего

include 'resources/config.php'; 
echo ("Template path is ".TEMPLATES_PATH); 

Результат является то, что определение TEMPLATES_PATH не найдено. Если я теперь переместить файл config.php в корневой каталог (HTDOCS), то есть на том же уровне, что и файл index.php и изменить включают в

include 'config.php'; 
echo ("Template path is ".TEMPLATES_PATH); 

TEMPLATES_PATH определяется и место работы.

Я пробовал почти каждый вариант абсолютных путей безрезультатно, и это, вероятно, указывает на фундаментальное отсутствие понимания тех или иных аспектов структур пути PHP, которые я не понял, и поэтому любое понимание этого было бы очень оценили.

ответ

0

попробовать

include __DIR__ . '/resources/config.php';

Кстати, используя композитор является лучшим выбором!

"autoload": { 
    "files": ["/resources/config.php"] 
} 
+0

Спасибо, но я пробовал все это. Это имеет такое же поведение, как и выше. Если я изменил выше, чтобы включить «include __DIR__ ./config.php», он работает так, как ожидалось. –

+0

@Alex Я думаю, вам стоит опубликовать новое изображение, включая файл index.php –

+0

Спасибо. Да, я только что сделал это. –

0

Ну, вот ответ на загадку. Но первое спасибо всем тем, кто пытался помочь.

Если я отправил содержимое файла config.php определение `

define("TEMPLATES_PATH", realpath(dirname(__FILE__) . 'resources/templates'));` 

был бы замечен как ошибочный. Путь к файлу config.php относится к файлу, а не к структуре каталогов. Следовательно, перемещая файл в корневой каталог, разрешенное выше определение работать, но когда в папке ресурсов, каталог ресурсов был указан. Следовательно, решение должно гарантировать, что спецификации в файле config.php относятся к расположению этого файла в проекте; поэтому изменение вышеуказанного на:

define("TEMPLATES_PATH", realpath(dirname(__FILE__) . '/templates')); 

устраняет проблему.

Смежные вопросы