我在includes文件夹中创建了一个名为Database.class.php的Database类。这是我的代码:
require_once 'includes/smarty/Smarty.class.php';
require_once 'includes/admin.functions.php';
function __autoload($class) {
require_once 'includes/'.$class.'.class.php';
}
try {
$db = Database::getInstance();
} catch (PDOException $e) { die('Error connecting to database.'); }
这段代码有什么问题吗?前两个包括工作正常,我只是得到“找不到类数据库”错误。
自动加载仅在创建新对象时有效吗?如果是这样,单身人士有解决方法吗?或者我做错了什么?
谢谢!
编辑: 手动包含时,它可以工作。所以它真的与自动加载相关..
答案 0 :(得分:2)
Smarty使用spl_autoload_register
注册自动加载功能。如果您有自己的自动加载功能,则必须在spl_autoload_register
注册它,如果您希望它们一起工作。