По какой-то причине я получаю это уведомление в приведенном ниже коде, мое приложение работает нормально и никак не влияет на остальную часть кода. Но я не могу обернуть голову вокруг этого одного уведомления. Я не вижу никаких ошибок в моем коде. Кроме того, я использую глобальную константу _ROOT в других местах, и она не сообщает мне, что она не определена. Интересно, что if (defined('_ROOT'))
оценивается как истинное, как и должно быть, поскольку очевидно, что оно действительно определено.
Код:
<?php
session_start();
//define('_DEBUG', 'YES');
define('_ROOT', dirname(__FILE__), true);
require_once _ROOT.'/config/config.php'; //no notice
function __autoload($class_name) {
if (defined('_DEBUG')) { echo '__autoload called<br>'; }
if (defined('_ROOT')) { echo 'root exists'._ROOT.'<br>'; } //doesn't give me a notice
if (file_exists(_ROOT.'/app/core/'.$class_name.'.php')) { //gives me a notice
require_once _ROOT.'/app/core/'.$class_name.'.php'; //doesn't give me a notice
}
}
$app = new Application();
echo $app->run();
Примечание: Notice: Use of undefined constant _ROOT - assumed '_ROOT' in path\to\index.php on line 13