У меня есть 200 сайтов, которые я поддерживаю, все они используют:
<?php
Include ("/_include/config.php");
?>
Но они ошибаются при попадании на страницу, которая включает это. Что мне нужно сделать, чтобы это исправить?
Я предполагаю, что это из-за относительного пути и каталога, в котором он находится, и я понимаю, что я просто не знаю, как это быстро исправить.
Windows 2008 R2
IIS 7.5
PHP 7
Спасибо,
Чтобы включить другой сценарий относительно пути текущего сценария, общим решением является объединение __FILE__
магическая константа с dirname
функционировать так:
include dirname(__FILE__).'/_include/config.php';
Вы также можете использовать '..'
или вложенный dirname
вызовы для перехода в родительские каталоги:
include dirname(dirname(__FILE__)).'/_include/config.php';
// is equivalent to:
include dirname(__FILE__).'/../_include/config.php';
Работать с функцией getcwd (). Это всегда возвращает путь к каталогу, где текущий вызываемый (не включенный) файл (exp. C: \ xampp \ htdocs). относительно этого вы можете редактировать ваши включает:
include getcwd() . "\include\config.php"; /* C:\xampp\htdocs\include\config.php */