У меня есть следующие файлы в моем проекте PHP:
index.php private/module1.php private/module2.php
module1.php
ссылается на module1.php
следующим образом:
require_once('private/module1.php');
В свою очередь, module1.php
требует module2.php
, поэтому он имеет следующую строку:
require_once('private/module2.php');
Мне нужно сообщить относительный путь от корня, чтобы он работал. Я предполагаю, что это потому, что команда require_once ожидает путь от текущего документа, который является index.php. Проблема в том, что PHP Storm не может справиться с этой ссылкой. Например, он не превращает строку private/module2.php
в гиперссылку и не указывает ее как фактическую ссылку.
Как это решить?
Вам просто нужно правильно настроить проект PhpStorm, указав пути включения, которые PhpStorm должен использовать для разрешения ссылок.
Перейдите в меню Файл -> Настройки -> PHP.
Там вы должны добавить корневой каталог проекта (тот, где находится ваш index.php), в список включенных путей.
Когда это будет сделано, PhpStorm должен разрешить путь в require_once('private/module2.php')
.
Кроме того, вы можете добавить частный каталог в список включенных путей, которые PHP использует через set_include_path () где-то в вашем index.php . Затем вы можете просто вызвать require_once('module2.php')
из вашего модуля1.php .
Опять же, вам нужно будет добавить частный каталог в список включенных путей, используемых PhpStorm, чтобы разрешить эту ссылку.
Вы также можете использовать базовый url. подобно
require_once($base_url . 'private/module2.php');
Базовый url может быть определен где-то самостоятельно или вы можете использовать переменную $ _SERVER, чтобы получить ее http://www.php.net/manual/en/reserved.variables.server.php
PhpStorm не может сделать ссылку, потому что она ищет
index.php private/module1.php private/private/module2.php
module1.php
должен просто потребовать имя файла module2.php
:
require_once('module2.php);