ユーザーに表示する 2 種類のビューがあります。ログイン ページと、メニューを表示できる他のすべてのページです。ログインしていない場合、メニューは表示されません。
私が今達成しようとしているのは、ヘッダーとフッターが自動的にロードされ、どのコントローラーがビューを呼び出したかに応じてコンテンツが動的である 1 つのテンプレートを使用することです。
現時点では、ログインコントローラーにこれがあります
$data['content'] = 'login_view';
$data['menu'] = 'nomenu';
$this->load->view('templates/template', $data);
これは、ログインしたコントローラーにあるものです
$data['content'] = 'profile_view';
$this->load->view('templates/template', $data);
あなたが見ることができるように、私は送信しません$data['menu']
そして私の見解は次のようなものです:
<?php $this->load->view('templates/header'); ?>
<?php
if($menu == 'nomenu'){
}
else{
$this->load->view($menu);
}
?>
<?php $this->load->view($content); ?>
<?php $this->load->view('templates/footer'); ?>
ここでの問題は、ログインしているコントローラーです
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: menu
Filename: templates/template.php
Line Number: 7
ログインビューの場合にのみ $menu を送信するため、 $menu が存在するかどうかを確認する方法はありますか?