0

loadModule();classに関数がcoreありますが、モジュールをロードするには、コンストラクトで変数を定義する必要があり、それらの多くはコアを必要とします。この関数は $core で定義されたコア クラスにあるため、単純にloadModule("someModule", $settings, $dbc, $core, $etc...);orを使用しますか? loadModule("someModule", $settings, $dbc, $this, $etc...);私は今混乱しています。助けていただければ幸いです。ありがとう

編集:

使用目的は次のようになります $this->core->loadModule("initialLoad, $settings, $version, $dbc, $parser, $layout);

モジュール構成は次のようになります

public function __construct($settings, $version, $dbc, $layout, $core, $parser){
    $this->settings = $settings;
    $this->version = $version;
    $this->dbc = $dbc;
    $this->layout = $layout;
    $this->core = $core;
    $this->parser = $parser;

}
4

1 に答える 1

0

依存性注入を検討します。おそらく、にきびのようなものを使用してください。

コンテナにすべてのモジュールを初期化させます。より高度な使用が必要な場合は、おそらくサービスをプロキシして、初回使用時に遅延インスタンス化することができます。

その後、おそらくコアをクラスに注入し、ロードされたモジュールを好きなように使用できます。

于 2015-06-27T02:42:03.610 に答える