我可能会遗漏一些非常明显的东西但是在我的index.php文件中我已经声明了一个常量,我的自动加载函数和一个尚未包含的类:
<?php
define("DOCUMENT_ROOT", dirname(realpath(__FILE__)).'/site/');
$c = new classThatHasNotYetBeenIncluded();
function __autoload($class_name)
{
include DOCUMENT_ROOT . 'classes/' . $class_name . '.php';
}
这很好,直到我将session_start()
添加到index.php的开头:
<?php
session_start();
define("DOCUMENT_ROOT", dirname(realpath(__FILE__)).'/site/');
$c = new classThatHasNotYetBeenIncluded();
function __autoload($class_name)
{
include DOCUMENT_ROOT . 'classes/' . $class_name . '.php';
}
这给出了:
Notice: Use of undefined constant DOCUMENT_ROOT - assumed 'DOCUMENT_ROOT' in ...
我已经查看了以前的答案,他们似乎都在'
中围绕常量名称丢失define()
,但似乎{{1}打破常数?
可能我对session_start()
,session_start()
或define()
的工作方式存在误解,但我并不知道从哪里开始。
答案 0 :(得分:0)
我使用 DIR 而不是文件,并像这样转义“\”:
define("DOCUMENT_ROOT", __DIR__ . "\\site\\");