Включение проблемы с файлами с относительными путями в системе Linux - PullRequest
0 голосов
/ 17 сентября 2010

У меня есть следующая структура дерева каталогов:

/index.php
/code/inc/variables.php
/code/inc/config.php

index.php - это файл, который называется.

В нашей системе разработки: /code/inc/variables.php, когда у меня есть строка:

require_once("./code/inc/config.php");

это не работает, и когда у меня есть:

include_once('config.php');

это работает.

Загадка в том, что первый работает в нашей системе разработки, а второй - в нашей производственной системе. И нет никакой разницы в древовидной структуре ни в одной из двух систем (обе работают под Linux, возможно, в разных версиях).

1 Ответ

1 голос
/ 17 сентября 2010

Если вы вызываете require_once в файле DOCUMENT_ROOT / public_html / x.php :

require_once("./code/inc/config.php");

это то, что будет искать файл

DOCUMENT_ROOT / public_html / код / ​​вкл / config.php

если вы вызываете тот же require_once DOCUMENT_ROOT / public_html / code / inc / variables.php :

будет искать файл:

DOCUMENT_ROOT / public_html / код / ​​вкл / код / ​​вкл / config.php

и, конечно, не получается.

Вы можете использовать запрос так:

require_once($_SERVER['DOCUMENT_ROOT'] . "/code/inc/config.php");

и все ваши файлы будут работать корректно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...