php - 在 Linux 系统上包含相对路径的文件问题

标签 php linux tree directory

我有以下目录树结构:

/index.php
/code/inc/variables.php
/code/inc/config.php

index.php 是被调用的文件。

在我们的开发系统中:/code/inc/variables.php,当我有以下行时:

require_once("./code/inc/config.php");

它不起作用,当我有:

include_once('config.php');

它确实有效。

令人困惑的是,第一个在我们的开发系统上工作,第二个在我们的生产系统上工作。并且两个系统中的任何一个的树结构都没有区别(都运行 linux,可能版本不同)。

最佳答案

如果您在文件 DOCUMENT_ROOT/public_html/x.php 中调用 require_once:

require_once("./code/inc/config.php");

这就是它要搜索的文件

DOCUMENT_ROOT/public_html/code/inc/config.php

如果您调用相同的 require_once DOCUMENT_ROOT/public_html/code/inc/variables.php:

它将搜索文件:

DOCUMENT_ROOT/public_html/code/inc/code/inc/config.php

当然失败了。

你可以像这样使用请求:

require_once($_SERVER['DOCUMENT_ROOT'] . "/code/inc/config.php");

它将在您的所有文件中正常工作。

关于php - 在 Linux 系统上包含相对路径的文件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3734140/

相关文章:

python - 字典字典的元组列表

php - laravel 5.2 迁移在特定列之前或之后添加列/字段

linux - 按需加载/卸载 ELF 部分?

在使用 BusyBox v1.19.3 创建的 linux 内核 2.6.37.6 中找不到 "Syslog.conf"

linux - 为什么关闭死掉的tcp-socket会影响另一个打开的tcp套接字?

data-structures - 为什么二叉树很重要?

javascript - 带有嵌入 javascript 的 php 在 HTML 标签上输出换行符?

php - 如何在一行中显示 3 个 <li>

php - 我在数据库中有 2 个表,我只想打印一次重复值

javascript - jqTree从Json中获取树: "Uncaught TypeError: $(...).tree is not a function"