基於久了又會忘記,趕快查一查記錄在此。

 

首先是Controller繼承。

置於application\core 底下

 

/* ----------------  開始 ---------------- */
class BASE_Controller extends CI_Controller
{
    function __construct() {
        parent::__construct();
        

        $this->load->helper(array('form','url'));
        $this->load->library('form_validation');
        
        /* 這是在模組用
        $obj =& get_instance();
        $obj->load->helper('url');
        */
        

    }

 

function show_menu($ml, $url="", $css_id="nav") {

        $base_url = $this->config->item('base_url');
        $full_url = $this->config->item('full_url');
        
        $menu_code = '<ul id="'.$css_id.'">';
        
        foreach($ml AS $k => $v) {
            $menu_code .= '<li>' . anchor($full_url.$url."/".$k,"$v") . '</li>';
        }
        
        $menu_code .= '</ul>';

        
        return $menu_code;
    
        
    }

abstract class Pages_Controller extends Base_Controller
{
    
    
    
    
}

abstract class Admin_Controller extends Base_Controller
{
    
    
    
    
}

/* ----------------  結束 ---------------- */

基本上這樣就能夠分別在不同的頁面(一般頁及後台頁)給不同的繼承。

 

 

置於控制器部分,我的思維是每個頁面(function)只要做好基本設置,佈署很快

class Admin extends Admin_Controller {

    function __construct() {
        parent::__construct();
        
        
    }
    
    //控制器名稱
    public $name = '管理端 ';
    public $path = 'index.php/admin';
    
    //管理區選單陣列
    public $nav = array
        (
            'index'        =>    '回前台',
            'admin'        =>    '首頁',

        
        );
    
    
    
    public function index()
    {
        //載入網站資訊
        $data['web_info'] = $this->web_info();
        $data['web_info']['page'] = $this->name .'首頁';
        $data['web_info']['theme'] = 'v1';
        
        //載入選單
        $menu = $this->nav;
        $data['menu'] = $this->show_menu($menu,$this->path);
        
        $data['content'] = '首頁';
        
        
        $this->load->view('admin',$data);
        
        
    }

 

在view部分則用includes

<?php $this->load->view('includes/header'); ?>
內容
<?php $this->load->view('includes/footer'); ?>

 

即可。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 incode 的頭像
    incode

    程式筆記本

    incode 發表在 痞客邦 留言(0) 人氣()