使用include php时链接的相对路径

时间:2017-11-24 21:06:00

标签: php include href

我有两个文件,目录htdocs中的index.php和子目录htdocs / Sub中的MR.php。然后我在目录htdocs(与index.php相同的目录)中有一个文件menu.php,它在两个页面的顶部提供了一个导航菜单。

我在index.php中包含了带

的menu.php
<?php include 'menu.php'; ?>

我将MR.php中的menu.php包含在

<?php include '../menu.php'; ?>

文件menu.php包含超链接

<a href="index.php">Home</a>

但是当显示页面MR.php时,此链接将不起作用,因为它指向Sub / index.html而不是index.html。

换句话说,包含的menu.php文件中的链接是相对于显示的页面而不是我文件系统中menu.php的位置。如何解决这个问题,以便menu.php中的链接始终相对于menu.php所在的位置?

我花了很长时间在这个论坛和其他地方搜索,我知道一个解决方案是使用绝对路径,但是当我将网站移动到另一台计算机时,这将是一个问题。

我一直在尝试

<a href="<?php echo $web_root; ?>index.php"> Home </a>

但它不起作用,无论如何我不明白这与使用绝对路径有什么不同。我希望能够将网站上传到远程服务器,而无需调整任何链接。

感谢您的帮助。

0 个答案:

没有答案