[CI] CodeIgniter特性 & 结构

通过llama.cpp与羊驼聊天的网页界面- 详解 Serge 的启动使用

 

市场上PHP开源框架很多,CodeIgniter做为其中一款,选择了它你也就拥有了明显的特性优势:

轻量快速,彻底的MVC,干净的URL,不使用模板引擎求效率,扩展方便,文档优秀。

 

CI的设计架构目标:动态实例化,引用最少核心资源。

       松耦合,减少组件依赖。

       组件专一性。

       

CI的应用程序流程:

  1. index.php 作为前端控制器,初始化运行 CodeIgniter 所需要的基本资源。
  2. Router 检查 HTTP 请求,以确定谁来处理请求。
  3. 如果缓存(Cache)文件存在,它将绕过通常的系统执行顺序,被直接发送给浏览器。
  4. 安全(Security)。应用程序控制器(Application Controller)装载之前,HTTP 请求和任何用户提交的数据将被过滤。
  5. 控制器(Controller)装载模型、核心库、辅助函数,以及任何处理特定请求所需的其它资源。
  6. 最终视图(View)渲染发送到 Web 浏览器中的内容。如果开启缓存(Caching),视图首先被缓存,所以将可用于以后的请求。

 

建议直接从CI的文档看起,对其中的原理会明白的更彻底一些:

http://codeigniter.org.cn/user_guide/index.html 

 

时隔1年后,CI升级至2.20版本,安全更新,下载后解压到目录即可使用,结构如下:

application     项目应用目录

system       CI核心文件目录

user_guide   CI文档资料(删除即可,使用在线手册)

index.php   CI框架入口文件

 

进入项目目录application,

其中的controllers, models, views目录就是我们用到的MVC形式的开发目录,

core, helpers, libraries用于自定义扩展核心文件 帮助函数 类库;

系统首先加载application中自定义的扩展文件,如果没有才去加载system中的文件,便于管理和扩展,这一点和大多PHP框架是类似的。

 

CI路由配置文件application/config/routes.php中默认配置是$route['default_controller'] = 'welcome';

所以从入口文件进入 默认访问的是application/controller/welcome.php控制器,

若修改默认控制器为home,可以这样:$route['default_controller'] = 'home';

-----------------------------------------------------------------------

 

Refer:CodeIgniter特性决定地位

Link:https://www.cnblogs.com/farwish/p/3843848.html

posted on 2014-07-15 01:09  ercom  阅读(834)  评论(0编辑  收藏  举报