ホームページ  >  記事  >  バックエンド開発  >  laravelコンテナの利用についてですが、どのような状況で利用していますか?

laravelコンテナの利用についてですが、どのような状況で利用していますか?

WBOY
WBOYオリジナル
2016-10-10 11:56:121470ブラウズ

私はまだlaravelコンテナについてよく理解していません。
私の理解では、コンテナー内で呼び出すことができるオブジェクトはたくさんあると思います。
必要なときに直接使用でき、新しいものなどは必要ありません。

お聞きしたいのですが、皆さんはこの機能を使いますか?
プロジェクトでこの機能を通常どのように使用しますか?サービス層を分離して各サービスをコンテナに入れるべきでしょうか?
コントローラーを呼び出しますか?
それとも使わないだけですか?

返信内容:

私はまだlaravelコンテナについてよく理解していません。
私の理解では、コンテナー内には呼び出せるオブジェクトがたくさんあると思います。
必要なときに直接使用でき、新しいものなどは必要ありません。

お聞きしたいのですが、皆さんはこの機能を使いますか?
プロジェクトでこの機能を通常どのように使用しますか?サービス層を分離して各サービスをコンテナに入れるべきでしょうか?
コントローラーを呼び出しますか?
それとも使わないだけですか?

Laravel コンテナは、サービスが配置される場所です。これらのサービスは、コンテナに 1 つずつバインドされるインスタンス オブジェクトまたはクロージャです。 Service を解決する方法は、bind()、singleton()、instance() の 3 つです。コンテナーから: make()、これらはすべて IlluminateContainerContainer 内にあり、IlluminateFoundationApplication は Container を拡張します。

コンテナの仕組みについては、コントローラーでコンストラクター インジェクションまたはメソッド インジェクションを使用すると、コンテナは次のようなサービスを自動的に解析するため、すでにコンテナを使用していることになります。 リーリー

そのため、コンテナー サービスは常に使用されてきましたが、従来、コンテナーはサービスの構築が分離された場所であり、必要な依存関係はコンテナー内で構築され、自動的に構築されます。依存オブジェクトに自動的に挿入され、分離が実現されます。

コンテナとアプリケーションのソースコード分析については、以下を参照してください:

Laravel学習ノート - コンテナソースコード分析
Laravel学習ノート - IoCコンテナインスタンス化ソースコード分析

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。