私が期待どおりに動作するために、依存性注入を得るのに苦労しています - 私は、接続先のサーバーを知る必要があり、クラス、APIを注入しようとしています注入パラメータ
を特定のユーザー。これは、各ユーザーが別のサーバーに接続する必要があるため、構成ファイル内のコンストラクターのプロパティをオーバーライドすることは無意味であることを意味します。
class MyController {
private $api;
public function __construct(Api $api) {
$this->api = $api;
}
}
class Api {
private $userServerIp;
public function __construct($serverip) {
$this->userServerIp = $serverip;
}
}
このクラスに正しいパラメータを挿入するにはどうすればよいですか?何とか定義を上書きすることは可能ですか?パラメータを使ってコンテナを呼び出すことによってクラスを取得する方法はありますか?
私はオブジェクトをインスタンス化するためにコンテナを呼び出そうとしていますが、そうでなければ定義に含まれるパラメータを渡しています。
こんにちは、 - ええので、この定義では、すべてのAPIオブジェクトは、IP「127.0.0.1」を持つことになります - それは別のIPでのAPIをインスタンス化するので、どのように私は、コンテナを呼び出すことができますか? – PointToPoint
@PointToPoint編集をご覧ください。また、ドキュメントを読んで、何かを試してみて、何を試したか説明してください。ブロックされている場所を理解することをお勧めします。 –