Это может быть немного глупый вопрос. Допустим, у меня есть каталог, как это:Файловые каталоги
./index.php
./browse/blog.php
./browse/articles.php
./browse/categories.php
./includes/header.php
./includes/footer.php
./classes/init.php
./classes/core.php
./user/login.php
./user/register.php
Мой init.php и core.php должны быть включены во все мои файлы index.php и например blog.php, articles.php и categories.php.
Если я включил core.php и init.php в header.php, он отлично работает в index.php. Но он не работает в articles.php, blog.php и так далее в основном все, что находится в папках (просмотреть или пользователя)
header.php содержит include_once('../classes/core.php');
и include_once('../classes/init.php');
Так что мой вопрос, как я смогу включить файл в другой файл, который включен в другой файл.
Позвольте мне перефразировать. Я хочу, чтобы core.php и init.php были включены в header.php, который включен во все остальные файлы. Как index.php и другие файлы, находящиеся в папках.
Могу ли я достичь этого, используя относительные пути к файлам?
Если вы делаете включенные в включении в ... вы должны помнить, что относительные пути будут относиться к MAIN-файлу, который запустил все. Если 'index.php' включает' login', который включает 'header', то' ../ includes/header' в файле входа будет относиться к пути index.php, а не к логину. –
Кроме того, я бы заменил 'include' и' include_once' на 'require_once' – hermann
@hermann, include лучше для производительности, если вы управляете своими включенными .. как указано ниже в MueR –