我看到了类似问题的答案,但没有一个对我有用 这是我对函数的实现:
spl_autoload_register(function($class){
require_once 'classes/'. $class .'.php';
});
所以当我说
$user = new User();
它工作正常,因为我在class文件夹中有一个带有类defenition的User.php文件 但是当我使用像
这样的本机PHP类时 $date = new Date();
我收到以下错误:
致命错误:require_once()[function.require]:无法打开所需的'classes / Date.php'
我尝试在try块中包含require_once,但它确实有效,我仍然得到相同的错误
有什么想法吗?
答案 0 :(得分:1)
您可以使用file_exists
检查您的类目录中是否有一个以$class
命名的类。如果没有,你不需要它。
如果它是PHP本机类,它将起作用,否则会引发错误。
spl_autoload_register(function($class){
if (file_exists('classes/'. $class .'.php'))
require_once 'classes/'. $class .'.php';
});