我有一个场景,我希望获得一个返回特定父目录的路径。这是一个示例文件夹strcuture([something]
是一个文件夹)
index.php
[components]
header.php
footer.php
[pages]
somePage.php
[somePageSubPages]
someSubPage.php
所以我的内容页面看起来像这样:
<?php
include('components/header.php');
?>
<!-- CONTENT STUFF -->
<?php
include('components/footer.php');
?>
这适用于index.php
,但不适用于somePage.php
和someSubPage.php
。我想要做的是创建一个函数,将路径返回到主目录,然后我可以将它添加到包含和其他东西:
$relPath = getPathToRoot($rootDirName);
include($relPath . 'components/header.php');
该函数只返回一个空字符串或../../
。
我考虑过使用__FILE__
,然后只计算给定$ rootDirName和字符串end之间的/
个字符。但是,我想问一下这是否是一种可靠的方式以及它在PHP中的表现。 (我不认真用PHP工作......)
答案 0 :(得分:1)
您可以使用..
进入父目录:
<?php
// somePage.php
include('../components/header.php');
?>
答案 1 :(得分:1)
我会确保您始终知道您网站的根目录,以便您可以从那里获取它。
要做到这一点,你至少可以采取两种方式:
include MY_SITE_ROOT . '/path/to/file.php';
include $_SERVER['DOCUMENT_ROOT'] . '/path/to/file.php';