2017-06-25 51 views
3

我正在試圖在application/core/MY_Controller.php中加載視圖文件,但它給出如下。如何在codeigniter的核心函數中加載視圖文件

Message: Undefined property: Edustaticlanding::$load 

Filename: core/MY_Controller.php 

功能是作爲MY_Controller.php

function menu(){ 
    $arrr = array(); 
    return $arrdata['menu'] = $this->load->view('menu',$arrr,true); 
} 

如下而我打電話的控制器(Edustaticlanding.php)這個函數如下。

function __construct(){ 
    $this->menucontent = $this->menu(); 
    print_r($this->menucontent); die; 
} 

請指正..哪裏它去錯了..謝謝

回答

2

在應用/核心/ MY_Controller.php

添加公共$data = array()像下面

<?php 

class MY_Controller extends CI_Controller 
{ 
    public $data = array(); 

    public function __construct() 
    { 
     parent::__construct(); 

     $this->data['menu'] = $this->menu(); 
    } 

    public function menu(){ 
     return $this->load->view('menu', NULL, TRUE); 
    } 
} 

在控制器然後一次性添加公共$數據=陣列();您可以訪問菜單視圖

你必須使用$this->data現在控制器

<?php 

class Example extends MY_Controller { 

    public $data = array(); 

    public function index() { 

     $this->data['title'] = 'Welcome to Codeigniter'; 

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

    } 
} 

在示例示圖,現在你可以呼應

<?php echo $menu;?> 
2

添加extends CI_Controller到你的核心控制器類似以下代碼:

class MY_Controller extends CI_Controller { 
2

請查看下文提到的解決方案。您需要首先調用父構造函數。所以它會加載所有基本配置。

首先程度CI_Controller類和調用,比如父類的構造描述如下

class MY_Controller extends CI_Controller { 

    public function __construct{ 
     parent::__construct(); 
    } 

} 

請,如果它不工作讓我。

+0

我已經這樣做了..我忘了在 函數__construct(){ parent :: __ construct();中忘記添加父:: _構造()。 $ this-> menucontent = $ this-> menu(); print_r($ this-> menucontent);死; } –

相關問題