Хорошо, поэтому у меня проблема с одним из моих включений. Мой config.php
включает файл user.php
который находится в каталоге классов. Если я вызываю файл config.php
из другого каталога, относительные пути нарушаются.
Я попытался использовать
include(dirname(__FILE__) . "/classes/user.php");
а также
include __DIR__ . '../classes/user.php';
вместо
include('../classes/user.php');
в моем файле config.php
и он все равно дает мне ошибку файла или каталога. Он продолжает искать user.php в include/classes/user.php вместо того, чтобы подходить к каталогу. Я пробовал путь dirname как с ../
и без косой черты. Ничто не работает.
Чтобы уточнить, моя структура выглядит так:
-admin
-classes
--user.php
-css
-drop
--index.php
-img
-includes
--config.php
-js
index.php
etc.
Для config.php требуются классы /user.php. Я получаю проблему, когда пытаюсь включить config.php в файл drop/index.php. Он не может найти классы /user.php.
Вы пытались добавить обратную косую черту перед двумя точками (..)? Как это
include(dirname(__FILE__) . "/../classes/user.php");
Просто хочу помочь тебе.
Возможно, попробуйте что-то вроде этого:
include($_SERVER['SERVER_NAME'] . "/classes/user.php");
UPDATE, если ../
и выше не работает, попробуйте следующее:
include(dirname(dirname(__FILE__)) . "/classes/user.php");
../
на моем местном окружении, и это работает.
var_dump(dirname(__FILE__) . "/classes/user.php")
?