Symfony 3 Dependency Injectionコンポーネントでは、あるサービスのメソッドの戻り値を別のサービスのコンストラクタの引数として使用するにはどうすればよいですか? サービスメソッドの戻り値を使用して別のサービスを構築しますか?
は例えば、私はこれを模倣する設定構文を探しています:<?php
class Foo {
public function getParam() {
// ...
return $param;
}
}
class Bar {
public function __construct ($param) {
// ...
}
}
$foo = new Foo();
$bar = new Bar($foo->getParam());
こんにちは@私はあなたの提案について、あなたがこの種の操作を許可するために要求するフレームワークに同意します。私はこの機能をparsimonyで利用しています。 – Matteo
@Steven - あなたが投稿したリンクは、特定のデータを実行時に要求することに重点を置いているようです。この質問にどのように適用できるかははっきりしない。はい、サービス・ロケータ・パターンを使用する必要がある場合がありますが、通常は依存性注入が優れています。もちろん、あなたがサービスfooとbarの名前をつけている人と対話しているときには、コンテキストがウィンドウの外に出ます。 – Cerad
文脈の欠如に対する謝罪。私の特定のケースでは、 'Foo'は設定情報へのアクセスを提供します。したがって、 'getParam()'は、アプリケーションの設定された日付フォーマット文字列を返すかもしれません。私は 'Foo'に束縛されることを望んでいませんでした。 – user2045006