在PHP中使用required / included文件作为基本目录

时间:2013-10-03 14:00:07

标签: php include require include-path server-side-includes

我目前正在使用index.php来包含另一个文件,它的结构如下:

root / index.php
     / new/ index.php

我用

<?php
require_once("new/index.php");
?>

问题是,其中的所有路径都是错误的。由于所有路径都基于new / index.php,因此当我包含它时,所有路径都会根据index.php进行更改。有没有办法让局外人访问index.php但同时我的实际代码存储在new /文件夹中?感谢

4 个答案:

答案 0 :(得分:3)

使用chdir功能更改当前目录。

答案 1 :(得分:2)

包含绝对路径

require_once(dirname(__FILE__) . "/filename.php");

答案 2 :(得分:1)

我不太确定你在问什么,但是如果你想要包含一个相对于你的根的文件,这是我的解决方案:

require_once($_SERVER['DOCUMENT_ROOT'] . '/new/index.php');

答案 3 :(得分:1)

你在谈论像

这样的事吗?
<?php echo '<img src="my_image.jpg">; ?>

如果是这样,使用斜杠来获取url根,然后使用那里的完整路径

<?php echo '<img src="/images/my_image.jpg">; ?>

否则您的网址很容易搞砸。