0

我有问题。基本上我想要di是使用静态构造函数返回一个实例化的对象,并将参数传递给这个静态函数(它就像一个构造函数)。

所以我想做的是:

$urls = Urls::st__construct("wp_","fk_arv_");
$main = ClassName::st__construct("wp_","fk_arv_");

和:

    abstract class Entity
{
...
    public static function st__construct($table_prefix,$key_prefix){
        return new self($table_prefix,$key_prefix);
    }

       function __construct($table_prefix,$key_prefix) {
        $this->table_prefix     = $table_prefix;
        $this->key_prefix       = $key_prefix;
       }
}

类 Url 和 ClassName 都扩展了 Entity。我希望“self”返回 Url 或 ClassName,因为我通过扩展类调用静态方法(它应该从它的父类继承静态方法)。但是,它试图返回一个新的实体(当然失败了)。我怎样才能正确地做到这一点?

4

0 回答 0