Php 包含后相对路径不起作用?

Php 包含后相对路径不起作用?,php,include,relative-path,Php,Include,Relative Path,我制作了一个包含te数据库信息(连接等)的配置文件。 配置文件由index.php调用。所以我有这个: index.php->calls->config.php->calls->db.php 这是可行的,但有时config.php不是由index.php调用的,而是由例如header.php调用的。问题是config.php中到db.php的相对路径不起作用 我怎样才能解决这个问题?我应该使用绝对路径吗 谢谢 如果所有文件都位于同一目录中,则可以将其包括在内,如下所示: include __DI

我制作了一个包含te数据库信息(连接等)的配置文件。 配置文件由index.php调用。所以我有这个: index.php->calls->config.php->calls->db.php

这是可行的,但有时config.php不是由index.php调用的,而是由例如header.php调用的。问题是config.php中到db.php的相对路径不起作用

我怎样才能解决这个问题?我应该使用绝对路径吗


谢谢

如果所有文件都位于同一目录中,则可以将其包括在内,如下所示:

include __DIR__."/config.php";
否则,在index.php页面中,在定义应用程序路径的所有包含之前创建一个常量,并使用该常量包含文件,例如:

在index.php中:

 define('APP', __DIR__);
 include APP.'/config/config.php';
在config.php中:

include APP.'/lib/db.php';