Как кто-то на кривой обучения php, я нашел, что лучший способ ссылки включать пути - это абсолютное местоположение, а не относительное, с помощью встроенного супер-локуса $ _SERVER. В моих собственных файлов я использую это с успехом:
include $_SERVER [ 'DOCUMENT_ROOT' ] . '/path_from_root/file_name.php';
Таким образом, это не имеет значения, где включен файл находится относительно моего вызывающего файла, и я не придется беспокоиться о вручную вводить в моем полный путь к серверу. (Возможно, очевидно ..) Это будет работать независимо от того, как вложенной вызов include, и если/когда я перемещаю вызывающий файл в другой каталог, например.
Вы можете использовать этот метод с помощью include, require и любых других связанных с файлом функций, которым нужен путь.
На соответствующую записку ..
$_SERVER [ 'PHP_SELF' ]
возвращает путь (относительно корня) текущего файла. Я также использую это совсем немного.
$ _SERVER имеет другую полезную информацию вы можете проверить здесь:
http://php.net/manual/en/reserved.variables.server.php
К сожалению, если это старая нить, я здесь новый.
EDIT: вы можете сохранить этот «DOCUMENT_ROOT» в переменной, которая будет использоваться позже, но из недавнего опыта я бы рекомендовал против нее, потому что тогда вам нужно беспокоиться о области переменных. Строка включения, как написано, будет работать каждый раз независимо от текущей области.
Фантастический! Это отягощает меня в течение многих лет - спасибо. –
Отсутствует правая сторона? –
@ BobStein-VisiBone: хорошее место, исправлено ... спасибо. – a1ex07