Codeigniter CI 框架的一些优化思考】的更多相关文章

前段时间使用CI做了两个小项目,对CI的流程和设计理念也有了一些新的认识.CI架构的一些基本优化这里就不做介绍了,如搬离system 文件夹等. 最近有一个稍微大一点的系统,也准备拿CI来做.设计时遇到架构上的一个问题: 我们知道,CI的工作流程大致是这样的,官网3.0的图: 一个典型的网站加载流程应该是在 controller 里添加public 方法,在方法里调用 load->view() 来显示视图,返回结果.CI 对于敏捷开发快速迭代相当友好,一个网站很容易就搭起来,而且似乎还条理清晰.…
引言: 前两天业务涉及到一个拉取答题排行榜的需求,数据库里数据是这样的: 同一个人可能提交过多次成绩,所以同一个人可能会有多次记录: 同一个人提交的多次成绩中可能有至少两次成绩是一样的. 于是,查询的时候,首先查询出每个人的最高成绩记录,然后如果某个人的最高成绩记录有多条,去重! 最终sql语句如下: /*拉取排行榜*/ public function rank(){ $data= json_decode(file_get_contents('php://input'), true); $nam…
在CodeIgniter框架中,CI本身自带了验证码,但是查看文档的时候,发现: 需要新建一个表,用来存储验证码信息.因为习惯了session存储验证码信息,所以我把我认为比较好看的验证码应用在了CI的框架中. 在 CodeIgniter/application/libraries/ 目录下,新建一个文件 取名 captcha.php. <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Capt…
到了这里,终于进入CI框架的核心了.既然是“引导”文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http://you.host.com/usr/reg 经过引导文件,实际上会交给Application中的UsrController控制器的reg方法去处理. 这之中,CodeIgniter.php做了哪些工作?我们一步步来看. 1.    导入预定义常量.框架环境初始化 之前的一篇博客(CI框架源码阅读笔记2 一切的入口 ind…
http://blog.csdn.net/yanhui_wei/article/details/25803945 一.大纲 1.codeigniter框架的授课内容安排 2.codeigniter框架的简介 |-----关于框架的概念 |-----使用CI框架的好处 |-----为什么选择CI框架 3.codeigniter框架的具体安装步骤 |-----官网下载:http://www.codeigniter.com/ |-----httpd.conf配置文件中rewrite重写机制的开启 |-…
    ci框架(codeigniter)Email发送邮件.收件人.附件.Email调试工具 Email 类         CodeIgniter 拥有强大的 Email 类来提供如下的功能: 多协议:Mail.Sendmail 和 SMTP            多个收件人            抄送和密送            HTML 或纯文本邮件            附件            自动换行            邮件优先级            密送批处理模式,开启时…
@update 2016-4-2 13:45:35 一.目录结构 ci_demo ├─myapp 应用主目录 │ ├─autoload.php 自定义的自动加载文件(可选) │ ├─myapp.php应用入口文件,拷贝index.php得到,注意修改$application_folder = 'myapp'; │ ├─cache 缓存目录 │ ├─config 配置目录,包括autoload,database,routes等 │ ├─controllers 控制器目录,可以分为api和web部分…
有助请顶,不好请评.0:33 2016/3/12CI框架使用PHPmail插件发送QQ邮件:发送成功,不过修改了主机参数,还包含了一个phpmail中的一个另外的文件,详见下方:参见:http://codeigniter.org.cn/forums/thread-11484-1-1.html博文摘写: 不知道大家在使用CI的email类的时候,是否有遇到麻烦,特别是使用smtp方式的时候,我遇到的是只能使用126邮箱,QQ和gmail都发送不成功,很无懒,最后在我们另外一个站上直接使用了phpm…
其实这几天一直都想找时间把这个感悟整理出来,也是这一段一直思考的问题,因为这一段参加一个PHP后台项目的开发,框架使用的是CI,随着项目的进展,对于CI接触的也越多,但是由于理解的可能并不深刻,我也只是看到了我所看到的,所以如果有不对的地方,欢迎给出意见和指正. 这几天接触CI框架,发现它的MVC模式运用的如此清晰简洁,完全按照MVC的分别组织模块,而且Model.View与Controller的交互只要调用方法就可以,如果有大量交互,Controller里的方法数量或许会增多,但也可以分模块的…
本篇并不是对某一组件的详细源码分析,而只是简单的跟踪了下CI的autoload的基本流程.因此,可以看做是Loader组件的分析前篇. CI框架中,允许你配置autoload数组,这样,在你的应用程序初始化时,会自动加载相应的类库,例如,在application/config/autoload.php中,autoload的配置如下: $autoload['libraries'] = array("smarty", "redis"); 则CI框架初始化时,会自动加载l…