2013-05-16 1 views

답변

0

주요 아이디어는 특정 유형의 모든 태그 서비스를 처리하는 서비스를 정의하는 것입니다, 다음 컴파일러 패스 내 이 서비스에 태그가 추가 된 서비스를 추가하십시오.

모든 서비스를 반환하는 방법을 추가 할 수 있습니다, Working with Tagged Services에 문서에서 예제를 촬영 : 당신이 DIC에 액세스 할 어디서나

<?php 

// ... 

class TransportChain 
{ 
    // ... 

    /** 
    * @return array 
    */ 
    public function getTransports() 
    { 
     return $this->transports; 
    } 
} 

을 그리고, 단순히 사용

// Get access to all services tagged with "acme_mailer.transport" 
$transports = $this 
    ->getContainer() 
    ->get('acme_mailer.transport_chain') 
    ->getTransports() 
; 

물론 객체 대신 문자열을 반환하기 위해이 모든 것을 약간 조정해야합니다.