2017-06-15 8 views
-1

symfonyでは、サービスとイベントリスナーの両方がservices.yml内に登録されています。また、登録方法も非常に似ています。 symfonyはどのサービスがサービス定義で、どれがイベントリスナーであるかをどのように知っていますか?Symfonyはサービスとイベントリスナーを区別する方法

+0

を存在することを忘れないでください。タギングシステムを使用するほうが便利です:https://symfony.com/doc/current/reference/dic_tags.html – Cerad

+0

リンクされたページから: "例えば、あなたが**サービスとして登録したいSymfonyのコアイベント**のリスナーであれば、kernel.event_listenerタグでフラグを立てることができます。 ありがとう、それはサービスもイベントリスナーになることを意味します – tenzin

答えて

0

です。言っ

は、イベントリスナーは、特定のイベント([...]部分)を聞くことが宣言されている。このように、この目的の

tags: 
    - { name: kernel.event_listener, event: [...] } 

のために使用されているtagsという名前のセクションがあります。

here続きを読むと、リスナー以外には、またsubscribersはちょうどサービスとしてそれを定義せずにイベントリスナーを作成し、登録することが可能であることを指摘したかった

+0

OK、それは意味します。 EventListenerは 'tags'で定義された特定のイベントの発生時に呼び出されるサービスです。 – tenzin

+0

@tenzinはい、基本的にあなたが言ったことです – DonCallisto

0

イベントリスナーはEventListenerはサービスでのサービスではなく、違い

関連する問題