私は多くのフレームワークが PHP で DI を実装しているのを見てきました。ただし、php のすべてのオブジェクトは、単一のリクエストの存続期間中に作成および破棄されるため、これがパフォーマンスにどのように影響するのか疑問に思います。
一般に、DI コンテナー内に多数のオブジェクトを定義します。PHP では、Controller がこれらのオブジェクトのほとんどを必要としない場合でも、それらはインスタンス化されます。また、DI の依存関係を php ファイルで宣言すると、参照されているすべてのスクリプトが読み込まれます。DI がなければ、必要なものだけをロードします。
一部のフレームワークで遅延 DI が許可されているのを見たことがあります。これは、不要なインスタンス化に役立つはずです。DI をセグメント化することも、最初の問題に対処する方法の 1 つかもしれません。では、DI は私の php アプリケーションのパフォーマンスに悪影響を及ぼしますか? また、それが起こらないように DI を php に実装するにはどうすればよいですか?