我在打开项目的侧面文件夹中的php文件时遇到问题。 我正在使用
include('$_SERVER[DOCUMENT_ROOT]/KungFu/php/hours.php')
错误消息是:
“警告:include(1):打开流失败:没有这样的文件或目录 在第48行的C:\ xampp \ htdocs \ KungFu \ index.php中”
还尝试了可能存在的所有变体-启用/禁用$_SERVER[DOCUMENT_ROOT]
仍然无法正常工作。 index.php在主文件夹中,并且在子文件夹的同一文件夹中,我具有hours.php,但它没有在include语句中打开它。但是它是通过带有<a>
的标签/KungFu/php/hours.php
打开的,所以我真的不理解为什么。
答案 0 :(得分:1)
您的代码有些错误。
首先,不能在单引号内使用变量。您可以在双引号中使用它们。但是,我建议使用串联。
还必须将DOCUMENT_ROOT
放在单引号之间,因为它是数组(字符串)的键,而不是常量。如果您启用了错误报告功能,则应该看到类似以下的警告:
使用不确定的常量DOCUMENT_ROOT-假定为'DOCUMENT_ROOT' (这将在将来的PHP版本中引发错误)……
正确的示例:
include($_SERVER['DOCUMENT_ROOT'] . '/KungFu/php/hours.php');
知道文件的路径为C:\xampp\htdocs\KungFu\php\hours.php
,而当前文件的路径为C:\xampp\htdocs\KungFu\index.php
,则可以使用dirname()
代替$_SERVER
超全局变量:
include(dirname(__FILE__) . '/php/hours.php');
答案 1 :(得分:0)
如果您的目录是这样的
应用
index.php
功夫
php
然后像这样的简单包含文件,无需添加全局变量
include "kungfu/php/hours.php";