1.搭建ci项目,http://codeigniter.org.cn/p 到这个网站上下载一个ci框架,目前我用的是3.0.0。(网站里有帮助说明)
2.删除一些没有的文件与目录之后,如下图:
研发主要是在application目录下,system目录为框架目录。public目录是我新建的,主要用于放js、css、images。
3.ci基础配置,css\js\images引用,在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文件(博客里可直接下载),代码如下: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代码如下: