小编arn*_*rno的帖子

在抽象类的静态函数中创建新实例

abstract class db_table {

    static function get_all_rows() {
        ...
        while(...) {
            $rows[] = new self();
            ...
        }
        return $rows;
    }
}

class user extends db_table {

}

$rows = user::get_all_rows();
Run Code Online (Sandbox Code Playgroud)

我想从抽象父类中定义的静态方法创建类的实例,但PHP告诉我"致命错误:无法实例化抽象类......"我应该如何正确实现它?

编辑:当然我想在这种情况下创建类"user"的实例,而不是抽象类的实例.所以我要告诉它创建一个被调用的子类的实例.

php abstract-class abstraction instantiation

4
推荐指数
2
解决办法
4741
查看次数

标签 统计

abstract-class ×1

abstraction ×1

instantiation ×1

php ×1