19日目のエントリーになります。されましたねそして、気が早いのですが4.0系がリリースされたということは、次の大きなアップデートは4.1系のリリースということになります。欄に以下のような記述があり、何やら面白そうな変化が起きそうだなと感じました。https://container.thephpleague.com/3.x日本語に訳すと「PSR11準拠のDIコンテナを試験導入するかも。phpleague/containerというライブラリに可能性を感じてるやで。」といった感じでしょうか。試してみたいと思います。免責事項DIやDIコンテナそのものの説明は行いません。インターネットや書籍に素晴らしい記事や文献があるのでそちらをご参照ください。インストールcomposerでサクッとインストール出来ます。ちなみに、2019年12月時点では3.3.0がインストールされます。league/containerクライアントとサービスクラスの作成まずはクライアントクラス(オブジェクトが注入されるクラス)とサービスクラス(注入対象となるオブジェクトのクラス)を作成します。Injectionです。準備が整ったのでphpleague/containerを利用してDIコンテナを作成します。//falseadd()メソッドを利用して登録を行い、get()メソッドを利用してインスタンスを取得します。エイリアス名の設定なども簡単に出来ます。実際にDIコンテナを利用する時は、インターフェイスを利用して具象クラスを隠蔽することが多いと思いますので、そのパターンも簡単に書いてみたいと思います。falseインターフェイスを利用した場合でも同じようにサクッとDIコンテナを作成することが出来ます。まとめ数行の記述で簡単に1DIコンテナが実現出来ました。今回は本当に試してみたレベルですが、もう少し深堀りして、CakePHPでこのライブラリがどのように使われるのか想像するのも面白そうです。かっこよくてテンションが上りましたというわけで、2020年もCakePHPの動向から目が離せません!簡単と言いつつドキュメントに書いてあるままやっていたらAutoloadの設定にハマって、作者の方に質問するなどしていました。↩Issueを細かくWatchしていないので、もしかしたら既に議論されているかもしれません。FOUNDhttps://itosho.dev/Follow株式会社nanapinanapiは、世の中のあらゆる「やり方」を世界一集めることを目指します。upLoginユーザーは見つかりませんでした。