1
我想在項目中第一次使用依賴注入容器,但我剛發現一個問題,我不知道如何解決。如何使用Zend_Soap_AutoDiscover依賴注入
該項目提供了一個SOAP Web服務,該服務在Zend Framework的SOAP組件的頂部實現。它的工作方式是定義一個充當你的服務的類,創建一個Zend_Soap_AutoDiscover或Zend_Soap_Server類(適用於WSDL或類本身),最後,通過ZF傳遞服務類的名稱構造函數或通過setClass方法。例如:
class MyService {}
$autodiscoveryObj = new Zend_Soap_AutoDiscover();
$autodiscoveryObj->setClass('MyService');
...
問題出在最後一步。我的DI容器可以創建一個服務對象並注入所有必需的依賴關係。這很好,如果我需要我自己的代碼中的實例。但是,只需將類的名稱傳遞給ZF即可,並且您不必親自實例化它,也不會通過容器正確實例化,因此它的依賴關係從不會被注入。此外,我不認爲我可以使用任何類型的包裝類,因爲ZF在類中使用反射。
處理這個問題的最佳方法是什麼?