簡體   English   中英

如何在所有頁面上加載相同的內容?

[英]How to load same content over all page?

我想通過調用一次全局加載該數據,而不是在控制器中的每個函數內調用相同的數據。 我做了

MY_Controller.php
<?php

class MY_Controller extends CI_Controller {

     public function __construct() {
         parent::__construct();
         $this->load->helper(array('form', 'url','file'));
         $this->load->model('common/common_model');
         $data['header_menus'] = $this->common_model->categoryMenus();
     }
}

這個文件在核心文件夾中,在控制器文件夾中有一個控制器,我做到了

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Home extends MY_Controller {

在家庭控制器中加載函數時,如何在視圖中加載 $data['header_menus'] 是否需要再次對函數中的該變量執行相同操作?

在 View 文件夾中創建一個視圖並在控制器中加載該視圖,在控制器中進行更改:

例如,您的視圖名稱是視圖文件夾中的 display_view.php:

MY_Controller.php

<?php

class MY_Controller extends CI_Controller {

     public function __construct() {
         parent::__construct();
         $this->load->helper(array('form', 'url','file'));
         $this->load->model('common/common_model');
         $data['header_menus'] = $this->common_model->categoryMenus();
         $this->load->view('tour/view',$data);
     }
}

display_view.php

<?php
if(!empty($header_menus)) {
  extract($header_menus);
}
print_r($header_menus); // you can get all the info here
?>

在 Codeigniter 中加載視圖

檢查繼承。

$data['header_menus'] = $this->common_model->categoryMenus();

必須

$this->data['header_menus'] = $this->common_model->categoryMenus();

在擴展控制器中,您需要調用它

$this->data['header_menus'];

對其他變量也使用$this->data數組,並使用以下內容調用視圖:

$this->load->view('some_view_file', $this->data);

此處此處此處此處此處閱讀文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM