Когда я пытаюсь использовать require
или require_once
, все будет работать нормально, если требуемый файл находится в том же подкаталоге, но в тот момент, когда он видит файл вне своего подкаталога, он генерирует фатальную ошибку.Вот как выглядит дерево файлов:
* main.php
+ login/
* login.php
+ includes/
* session.php
... поэтому, если мне нужно, чтобы main.php требовал login / login.php, все нормально, но если я попытаюсь сделать каталогОбратный путь для login.php, который требует include / session.php, завершается ошибкой, что приводит к ошибке:
Неустранимая ошибка PHP: require_once (): сбой открытия необходим [...]
код для этой концепции:
require('login/login.php') #works fine (main.php)
require('../includes/session.php') #quits (login.php)
Я пытался использовать $_SERVER('DOCUMENT_ROOT')
, $_SERVER('SERVER_ADDR')
, dir(_FILE_)
и chdir(../)
.Я помню, как несколько месяцев назад работал над проектом, над которым я решил эту проблему, это была простая функция, которая пересекала пути к файлам, но я больше не могу ее найти.Есть идеи?