Я использую последнюю версию XAMPP, и autoload () не работает должным образом. Я в значительной степени заменил свою предыдущую автозагрузку на ту, что была в руководстве по PHP, но безрезультатно.
После установки нескольких эхо и die () я пришел к выводу, что __autoload вообще не вызывается.
class Main
{
var $config_data;
function __autoload($class_name) {
echo "hello.";
// If the file exists, require it
if (file_exists(SYSTEMDIR.$class_name.".".EXT)) {
echo 'Autoloader: The class exists.';
(require_once(SYSTEMDIR.$class_name.".".EXT))
or die("I tried to autoload class $class_name, but it failed! =(");
} else {
// The file didn't even exist. Die.
die("I was going to autoload class $class_name, but it didn't exist! =(");
}
}
/*
* Function __construct
* @param datatype variable description
* @return datatype description
*/
function __construct(/* $arg */) {
//Load the config
$this->config = new Config;
//Load the uri class:
$this->uri = new Uri;
}
}
Он не выводит "привет", который находится в самом верху __autoload ().
Единственный вывод:
Неустранимая ошибка: класс 'Config' не найден
в E: \ xampplite \ htdocs \ system \ Main.php
по линии 84