Я получаю голову вокруг ООП и пространства имен, и я думаю, что это возится с моим пониманием абсолютных и относительных путей. Учитывая следующий простой каталог:Созданы ли экземплярированные классы относительно относительных путей в ООП?
X +
A +
B +
FileC
FileB
Файл B имеет класс, который содержит file_exists($this->filepath)
вызова в конструкторе. Он ищет FileC
внутри каталога B
, который находится в той же директории, что и FileB
.
$ filepath, который, как я предполагал, будет работать, равен B/FileC
, но возвращает false. Затем я попробовал ../B/FileC
также неверно. Затем я попробую ..A/B/FileC
. Опять ложный. Я должен пойти в X
, чтобы это получилось: ../X/A/B/FileC
Очевидно, что мое понимание здесь. Я на 80% уверен, что пространство имен не имеет отношения к file_exists
. Итак, моя следующая догадка - влияет ли вызывающий объект на путь файла realtive? Значение, если класс FileB создается из класса, определенного в другой папке в том же каталоге, что и A
, определяет ли этот класс относительный путь?
Извините за новый вопрос.
Я думаю, что это не имеет ничего общего с ООП, но у меня также возникли проблемы с относительной структурой каталогов. Единственный способ, которым я смог это решить, - использовать абсолютные пути. – Voitcus