私は、単一の基本クラスを継承する多くのPHPクラスを用意しています。この基本クラスは静的メソッドを提供します。methodA()
を各クラスでオーバーライドすることができますが、実際にはあまりオーバーライドされません。各クラスには静的変数がありますが、それはname
とは異なりますが、name
に基づいて異なるクラスごとにmethodA()
を実行する必要があります。私はオブジェクト指向のPHPを初めて使っているので、これを行うにはどうすればよいか正確にはわかりません。PHPで継承された静的メソッドのクラスからプロパティへのアクセス
Javaでは、基本クラスのプロパティを作成し、それをコンストラクタメソッドで定義して、super()
経由で呼び出すことにしましたが、静的データに基づいてこれを行う方法がわかりません。正しい軌道にいるのですか?これを達成する最良の方法は何でしょうか?
http://php.net/manual/en/language.oop5.late-static-bindings.php –
FYI:コードがarou静的な呼び出しであり、OOPではありません。あなたが持っているのは、名前空間のグローバル(変数と関数)だけです。 –
@AlexBlex例を使ってそのコメントを回答に記入すると、私は喜んで同意します。 –