5

我试图创建一个引导文件,但是每当我尝试在另一个文件中包含或要求它时,就会不断出现这样的错误:

警告: require_once(../folder/file.php)[function.require-once]:无法打开流:没有这样的文件或目录...

致命错误: require_once() [function.require]: 无法打开所需的 '../folder/file.php' (include_path='.:') in...

绘制整个场景:我有一个引导文件 load.php。在其中,我连接到位于 ../config/config.php 的配置文件。在加载文件上方,我在 classes/database.php 中有一个数据库类文件。在数据库文件中,我写了这个 if 语句:

           if ( file_exists('../load.php') ) {
               echo 'load.php: It exists';
               require_once('../load.php');
           } else {
                  echo 'load.php: It does not exist';
                  }

在加载文件中,我写了一个类似的 if 语句,但检查配置文件是否存在。令人惊讶的是,当我加载 database.php 文件时,我得到:

load.php: It exists
config.php: file doesn't exist

但是当我加载 load.php 文件时,我得到:

config.php: It exists

这是我的文件所在的位置:

根目录: /Library/WebServer/Documents/project

config.php 文件/Library/WebServer/Documents/project/config/config.php

load.php 文件: /Library/WebServer/Documents/project/includes/load.php

database.php 文件: /Library/WebServer/Documents/project/includes/classes/database.php

我需要有关此错误的帮助。谢谢,

4

1 回答 1

8

使用dirname(__FILE__) . '../relative/path/from/file/in/which/opened/to/config.php'. 从 PHP 5.3 开始也有__DIR__常量

于 2012-07-03T00:50:04.717 回答