非常に単純な依存性注入コンテナを作成しました。DIコンテナのサービスロケータ
$foo = $container->get(Foo::class);
は、これがうまく機能し、私がfooのコンストラクタで依存関係を注入することができます:私は言って、クラスのインスタンスを作成することができます。今、私が言ってクラスのインスタンスを作成したい:
$user = new User();
私はUserクラス内のコンテナからサービスにアクセスできるようにする必要がありますが、私はそれを行うための最善の方法はよく分かりません。私が避けたい2つの方法はコンテナをコンストラクタに渡し、次に上記のようにコンテナのgetメソッドを使用してFooのインスタンスを作成する方法です。
これを達成する正しい方法を誰かに教えていただければ幸いです。ありがとう
おかげで、私は本当にとしてそれ以外の場合は、私はユーザーインスタンスを作成するために、私の呼び出しを変更する必要がありますいずれか、このようにそれを行う必要はありません。理想的には静的なアクセサを使用したいのですが、コンテナ内で同じインスタンス(配列として格納)を共有するようにする方法がわかりません。 – nfplee