CI框架(CodeIgniter)使用技巧和步骤小结(一)

作者:掠影
最后编辑时间:2017-05-02 08:12:37
浏览次数:1807



    不知不觉,已经用了将近一年的CI框架了。最早接触CI还是在15年的时候,那时候没什么编程基础,因此也就是看着周边的大神们用CI做出各式各样功能齐全的页面,心里满是羡慕。直到一年前,正式开始实习,才开始逐渐接触并使用起CI来,并总结得出了不少的经验和技巧,与大家共享。

    首先,我们来谈谈CI框架的部署和配置。对于CI而言,基本的部署仅仅需要通过下载官方压缩包,并解压至本地服务器根目录即可。而基本的配置信息,也就是application/config/database.php中,需要填写的服务器地址,用户名密码等基本信息。完成以上步骤,直接访问服务器地址即可见到亲爱的火镰标志了。

    配置如下

'hostname' => 'localhost',//主机名,如127.0.0.1
'username' => 'root',//用户名
'password' => 'password',//用户密码
'database' => 'db_test', //目标数据库名

    当完成基础配置后,接下来就是了解MVC的基本结构。众所周知,Controller即C层,为MVC结构的核心,通过Controller可加载Model数据和View页面;此处,我们将Controller中函数分为两种:View函数和Action函数。

View函数基本结构为:


public function testView()
{
     $data = array();//需要传入view的数据
     $this->load->view("test/index",$data);
     //声明需要加载的页面为test文件夹中的index.php,并传入数据       
}


Action函数基本结构为:


public function testAction()
{
     $data = $this->input->post();//接收post过来的信息
     $res= $this->test_model->getTest($data);//调用model,返回数据
     echo json_encode($res);//以json格式返回响应
}


    基本上两种函数可满足控制器的绝大部分职能,配合附属函数,例如protected属性的一些过滤器(filter)之类。

    在Controller中存在两种思路,一种为通过Controller进行业务逻辑的处理,将逻辑全部集成在Controller中。这种模式的好处在于,可通过调用不同model的方式,使得不同模块间数据可互通,提升了灵活性;缺点在于耦合性太高,存在的依赖太多,对代码的修改提出了挑战;

    

    第二种为将业务逻辑全部集成在model中,每个Action函数对应一个model函数,将参数全部通过调用model进行处理,该模式优点在于耦合性低,提升了模块集成程度,缺点在于某些情况下,如需要调用其他表数据时,对可能出现的跨model调用函数的情况,处理起来就力不从心了。本人习惯于第二种方式,将某些可能出现的跨model调用函数集成于一个model文件中,其他model通过继承的方式来调用这些公有函数。




取消

感谢您的支持,我会继续努力的!关闭

扫码支持
大家有钱的捧个钱场,没钱的捧个人场233333

打开支付宝扫一扫,即可进行扫码打赏哦

分享到: QQ空间 更多



评论区

  • 180.167*****: 2017-04-25
    基本上都是用后一种模式,Model本身就是处理数据和业务逻辑的😒
  • 119.131*****: 2019-05-13
    尴尬,一直用得都是第一种。 或者多加一层service作为中间层,负责业务逻辑的处理。