CodeIgniter のデフォルトのビュー読み込みプロセスでは、すべてのコントローラーにヘッダー ビューとフッター ビューを含める反復タスクが必要です。複数のコントローラーやビューを操作する場合、これは退屈で時間がかかる可能性があります。
この問題に対処するには、カスタム ローダー クラスを作成して、ヘッダー ビューとフッター ビューを含めるプロセスを自動化できます。これにより、開発者は各コンポーネントのload->view() メソッドを明示的に呼び出さずにビューをロードできるようになります。
アプリケーション/コアに MY_Loader.php という名前の新しいファイルを作成します。ディレクトリ。このファイルは CodeIgniter の CI_Loader クラスを拡張し、新しい template() メソッドを追加します。
<code class="php">// application/core/MY_Loader.php class MY_Loader extends CI_Loader { public function template($template_name, $vars = array(), $return = FALSE) { $content = $this->view('templates/header', $vars, $return); $content .= $this->view($template_name, $vars, $return); $content .= $this->view('templates/footer', $vars, $return); if ($return) { return $content; } } }</code>
template() メソッド内:
カスタム ローダー クラスを作成した後、コントローラーのコンストラクターを更新して拡張ローダーをロードします:
<code class="php">class My_Controller extends CI_Controller { public function __construct() { parent::__construct(); $this->load = new MY_Loader(); } }</code>
これで、template() メソッドを使用してビューを読み込むことができます。
<code class="php">$this->load->template('body');</code>
これにより、ヘッダー、本文、およびフッターのビューが自動的に読み込まれます。必要に応じて変数をビューに渡すこともできます。
以上がCodeIgniter ビューへのヘッダーとフッターの組み込みを自動化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。