CodeIgniter 中的頁眉和頁腳管理
CodeIgniter 是一個基於MVC 的PHP 框架,可以靈活地管理一頁和眉毛腳等頁面部分。它允許開發人員根據特定要求自訂這些部分。但是,在每個控制器中手動載入單獨的頁首和頁尾視圖可能會重複且耗時。
解決方案:自訂載入器
為了簡化此流程,CodeIgniter 提供了建立自訂載入程式的機制。透過擴展內建的 CI_Loader 類,開發人員可以修改其功能並避免冗餘程式碼。這樣可以在所有需要的頁面中自動包含頁首和頁尾。
CodeIgniter 2.X:
在「/application/core」中建立一個新檔案名為「MY_Loader.php」的目錄:
<code class="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>
CodeIgniter 3.X:
對於CodeIgniter 3.X,可以使用相同的方法,稍作修改:
<code class="php">class MY_Loader extends CI_Loader { public function template($template_name, $vars = array(), $return = FALSE) { if($return): $content = $this->view('templates/header', $vars, $return); $content .= $this->view($template_name, $vars, $return); $content .= $this->view('templates/footer', $vars, $return); return $content; else: $this->view('templates/header', $vars); $this->view($template_name, $vars); $this->view('templates/footer', $vars); endif; } }</code>
使用自訂載入器:
在控制器中,載入頁首和頁尾變得非常簡單:
<code class="php">$this->load->template('body');</code>
這會自動將「頁首」和「頁腳”視圖包含在主“正文”視圖中。對這些模板所做的任何更改都將反映在使用自訂載入器的所有頁面中。
以上是如何簡化 CodeIgniter 中的頁首和頁尾管理?的詳細內容。更多資訊請關注PHP中文網其他相關文章!