1.搭建ci項目,http://codeigniter.org.cn/p 到這個網站下載一個ci框架,目前我用的是3.0.0。 (網站裡有幫助說明)
2.刪除一些沒有的文件與目錄之後,如下圖:
研發主要是在application目錄下,system目錄為框架目錄。 public目錄是我新建的,主要用於放js、css、images。
3.ci基礎配置,cssjsimages引用,在config目錄下的config.php裡面加入了一個系統變數:
$config['asset_url'] = "http://127.0.0.1/"; //js\css\images访问地址,区分
4.設定預設存取controller,config/routes.php:
$route['default_controller'] = 'home'; //默认controller名称 $route['404_override'] = ''; //404 $route['translate_uri_dashes'] = TRUE;
5.控制器繼承基底類別的方法。在core目錄下新建一個MY_Controller.php檔案(部落格可直接下載),程式碼如下:
<?php class MY_Controller extends CI_Controller{ function __construct(){ parent::__construct(); } } /** * 后台控制器基类方法,只要继承AdminBase * $this->uri->segment(1) 获取控制器名称 * $this->uri->segment(2) 获取action名称 */ class AdminBase extends MY_Controller{ public $skip_filter = array(); //array( 'controller_name', 'controller_name' ) 不用登录的页面 public $data = array(); function __construct() { parent::__construct(); $this->data['infos'] = array(); //传递给前台页面的变量,变量名为infos $this->load->library('session'); $this->load->library('layout'); //加载模板文件 libraries目录下 if( !is_login() ){ redirect('login/index'); //如果未登录跳转到登录页 } } /**过滤方法*/ public function is_login(){ if( in_array($this->uri->segment(1), $skip_filter) ){ return true; } //无需登录的控制器 if( $this->session->has_userdata('user_id') ){ //判断是否登录 //方法, 判断用户是否被封 return true; }else{ return false; } } } /*** 前面控制器基类方法,只要继承HomeBase**/ class HomeBase extends MY_Controller{ function __construct(){ parent::__construct(); } }
6.1怎麼引用版面模板,libraries目錄下新建一個Layout.php文件,部落格最低下有下載。注意要修改的地方:
$this->layout = 'layouts/' . $layout; // 'layouts/' layouts为views目录,主要用来放模板的
6.2layouts主要是放整個頁面的模板:
以下劃線開頭的,我們為局部代碼;以字母開頭的,我們是整個頁面的佈局;(特徵:特徵不:需重複呼叫公共文件,修改公共文件方便,佈局清晰等)。
index.php程式碼如下:
<div> <?php $this->load->view('layouts/_top_menu'); //头部开始 $this->load->view('layouts/_left_menu'); //左边菜单开始 ?> <!--右边框架开始--> <div> <div name="code">//$this->load->view('info/index', $this->data); //未用模板文件 $this->layout->view('info/index', $this->data); //引用模板的写法 $this->data为传到view层能用的变量,如:$this->data = array('infos'=>array(), 'page'=>1) 表示:有两个变量,infos一个,page一个
以上就介紹了php ci開發基礎應用,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。