1

CI + HMVC のインストールに取り組んでいます。HMVC 関数呼び出しを使用する場合:

Modules::run("header");

画面には何も出力しません。ただし、実行すると:

echo Modules::run("header");

また:

$x = Modules::run("header");

その後、動作します。

これは私が動作させようとしているコードです:

// HOME MODULE
class Home extends MX_Controller{
    public function index(){
        Modules::run("header");
        $this->load->view('home_view');


        Modules::run("header");
       }
   }
// HEADER MODULE
class Header extends MX_Controller{
    public function index(){
        $this->load->view('header_view');
    }
}

// FOOTER MODULE
class Footer extends MX_Controller{
    public function index(){
        $this->load->view('footer_view');
    }
}

しかし、実行すると、「home_view」コンテンツしか表示されません。ヘッダーもフッターもありません。

$this->load->view() がバッファリングされているため、上記のアプローチを使用して解決することはできません。これにより、「home_view」コンテンツが HTML の下部、フッターの下に表示され、物事が混乱します。

Modules:run() がバッファリングしない理由を見つけてください。ありがとう

4

1 に答える 1