我有一個模板,可以將我的視圖加載到header,footer和main_content等部分。我在頁腳中有一個小部件,我想顯示特定類別的前5個帖子,例如「Current Affairs」。由於模板是以部分方式加載的,我想要一個加載這些數據並將其提供給模板的footer.php文件的函數。但是,該函數應該在構造函數中加載,以便控制器的所有其他功能不需要調用此函數。繼承人我的代碼。聲明在Codeigniter中從數據庫中獲取值的全局數組
class Home extends CI_Controller {
// public $data['latest_current_affairs'] = array(); // Tried this, doesnt work.
function __construct()
{
parent::__construct();
$this->load->model('Add');
$this->load->model('Fetch');
$this->load->library('form_validation');
$this->load->helper('date');
// $this->load_widgets(); //works fine if we print an array
}
public function load_widgets()
{
$where = array('post_category' => "Current Affairs", 'post_status' => "Published");
$orderby = NULL;
$limit = 5;
$data['latest_current_affairs'] = $this->Fetch->selectWhereLimit('post', $where, $orderby, $limit);
// print_r($data); //works fine if printed through here.
}
public function index()
{
$data['main_content'] = 'home';
$this->load_widgets();
$this->load->view('includes/template', $data);
print_r($data); //Here the data prints only the main_content index but not the latest_current_affairs index of the array.
}}
這裏是我的template.php的內容:
<?php $this->load->view('includes/header'); ?>
<?php $this->load->view($main_content); ?>
<?php $this->load->view('includes/footer'); ?>
的代碼優化或更好的編碼技術的任何建議都歡迎。
爲什麼不爲你創建助手並隨時打電話給你的助手。 – Saty
那麼這將是一個工作選項,但我很好奇我們如何製作一個全局數組並從數據庫中獲取值。 – cyberrspiritt
顯然要存儲在數組中的數據非常大,並將其存儲在會話中是一個糟糕的主意 – cyberrspiritt