无法包含其他文件夹中的文件

时间:2018-11-20 15:03:46

标签: php include pear

我具有当前的目录结构htdocs/mvc2/,其中包括应用程序和公用文件夹。

如果我在包含require_once http://localhost/mvc2/app/core/bootstrap.php的情况下运行bootstrap.php '../config/config.php',则效果很好。

如果我尝试在我的http://localhost/mvc2/public/index.php中包含bootstrap.php 我收到以下错误:

  

警告:require_once(../ config / config.php):无法打开流:否   C:\ xampp \ htdocs \ mvc2 \ app \ core \ bootstrap.php中的此类文件或目录   在第2行

     

严重错误:require_once():需要打开失败   '../config/config.php'(include_path ='C:\ xampp \ php \ PEAR')在   第2行上的C:\ xampp \ htdocs \ mvc2 \ app \ core \ bootstrap.php

如果我注释掉了bootstrap.php文件中的所有包含项,我可以将bootstrap.php文件包括在index.php中:|。

我在xampp上使用Windows7。 我尝试过更改php.ini文件,就像其他有相同问题的人建议的那样,无济于事。当前是:

; UNIX: "/path1:/path2"
include_path=C:\xampp\php\PEAR
; Windows: "\path1;\path2"
;include_path = ".;C:\xampp\php\pear"

2 个答案:

答案 0 :(得分:0)

打开

  

C:\ xampp \ htdocs \ mvc2 \ app \ core \ bootstrap.php

并编辑此行

require_once('../config/config.php')

提供此文件的完整路径 config.php

您可以使用$_SERVER['DOCUMENT_ROOT'].'/YOUR_INCLUDEABLE_FILE_NAME';

$_SERVER['DOCUMENT_ROOT']是在服务器的配置文件中定义的,当前脚本正在其下执行的文档根目录。

您的服务器将使用C:\xampp\htdocs返回$_SERVER['DOCUMENT_ROOT']

答案 1 :(得分:0)

硬编码完整路径有效。 在Win10中使用$ _SERVER ['DOCUMENT_ROOT']。'/ YOUR_INCLUDEABLE_FILE_NAME'进行了尝试,DOCUMENT_ROOT显示为“ /”而不是“ \”。它失败了。