致命错误:在其他类中找不到抽象类

时间:2018-12-18 10:51:02

标签: php oop abstract-class fatal-error

我有一个抽象类'AbstractClassA':

abstract class AbstractClassA {
    //some code...
    public static function isValidID($id) { ... }
}

另一个抽象类:

abstract class AbstractClassB extends AbstractClassA {
    const id = 1111;
}

然后在第三堂课中声明以下内容:

class OrdinaryClass {
    public static function canDoIt($id) {
        return AbstractClassB::isValidID($id);
    }
}

然后我检查以下内容时得到以下错误:

OrdinaryClass::canDoIt(1111);

“致命错误:未捕获的错误:在##行的OrdinaryClass.class.php中找不到类'AbstractClassB'”

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

当文件位于不同文件中时,必须首先xpack.reporting.enabled: true 才能使用:

require

可以选择自动注册autoloader

<?php

require_once "/path/to/AbstractClassA.php";
require_once "/path/to/AbstractClassB.php";

class OrdinaryClass {
    public static function canDoIt($id) {
        return AbstractClassB::isValidID($id);
    }
}

// autoloader.php

spl_autoload_register(function ($className) {
    include __DIR__ . '/' . $className . '.php';
});