【发布时间】:2011-02-10 13:54:21
【问题描述】:
我想知道是否有一种方法可以从 AJAX 需要包含或请求的每个文件中创建到主文件夹(index.php 所在的位置)的相对路径。
我想结合 AJAX 和 PHP 包含,所以第一次使用 PHP 加载页面时,然后能够使用 AJAX 刷新页面的某些部分,但文件是相同的并且位于子文件夹中。
我的路径有问题,虽然我可以设置绝对路径,但每次服务器更改时我都必须更改它。我想要一个指向我的项目所在位置的相对路径,但不是 DOCUMENT_ROOT,因为该路径不适用于别名。 (或者你知道如何使它与别名一起使用吗?)
谢谢!
编辑* 这是我的目录结构的样子:
[main_dir]/index.php - 主索引文件
[main_dir]/phpinc - php 包含文件 - 仅适用于包含(对它们没有 AJAX 调用)
[main_dir]/modules - 模块是页面的一部分,可以包含在 PHP 或从任何地方调用的 AJAX 中(没关系,它们将作为单独的 HTML 文件加载,因此 PHP 中的路径是相对于模块的物理位置。
当你在 PHP 中包含它们时,它们通常会采用 [main_dir] 路径(因为 index.php 已经包含它们)
所以我的问题是:从模块文件中,我想在 phpinc 文件夹中包含一些文件,但它可能是 ../phpinc/file.php 或 phpinc/file.php 。
有没有比只放一个更优雅的方式
if (is_dir("phpinc")) {
$inc_path = "phpinc";
} else if (is_dir("../phpinc")) {
$inc_path = "../phpinc";
}
在每个模块的开头?
【问题讨论】:
-
你能举一个你正在尝试的例子吗?
-
好的。我会尽力。我将编辑问题描述以添加它。
标签: php ajax path include relative-path