0

問題が発生しています。基本的に私がしたいのは、静的コンストラクターを使用して、この静的関数 (コンストラクターのように機能する) に渡されたパラメーターを持つインスタンス化されたオブジェクトを返すことです。

だから私がやりたいことは次のとおりです。

$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