セッターがいくつかあるクラスがあり、セッターインジェクションを使用したいのですが、RuntimeDefinitionではトリガーされません。最初は不可能かもしれないと思っていましたが、Zend 2.1.0にアップグレードすると、新しいsetProfiler()メソッドが導入されたために他のクラスに注入されていたZend \ Db \ Adapter\Adapterでエラーが発生し始めました。 (デフォルトのRuntimeDefinitionを使用しながら)セッターインジェクションを実行しようとしています。私はAdapterのコードを調べましたが、そのコードと私のコードの唯一の違いは、setProfiler()メソッドに@paramを含むドキュメントコメントが含まれていることです。コードにいくつか追加しましたが、機能しません。明らかに私は何かが欠けています。DI定義ファイルにコンパイルしても、
'methods' =>
array (
'__construct' => true,
'setProfiler' => true,
)
私の定義は次のようになりますが:
'methods' =>
array (
'setMyValue' => false,
)
Diにセッター関数を正しく識別させて、必要な値を挿入するために使用できるようにするにはどうすればよいですか?