用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1197|回复: 4
收起左侧

[讨论/交流] 如何实现,请求开始或者结速的时候做一些公用的事情

[复制链接]
发表于 2014-4-26 10:03:43 | 显示全部楼层 |阅读模式
controller的__construct ,能实现本类开始前初始化,但结束的时候要做一些事情呢?

还有个问题就是,controller类只实现本类里面的共同控制,我想实现更广范围的,所有请求比如都要做的事情,不想每个contrlloer去加,如何才能实现?

 楼主| 发表于 2014-4-26 10:16:46 | 显示全部楼层
从网上搜的,但没找到合适的位置

<p>入口文件入口文件主要完成下列工作:<br>
1. 指定 CodeIgniter 框架所在目录;<br>
2. 定义 APPPATH 常量,指示应用程序文件根目录;<br>
3. 载入 codeigniter/CodeIgniter.php 文件,启动框架。</p>
<p>codeigniter/CodeIgniter.php 文件这个文件是 CodeIgniter 的基本文件,主要完成初始化 CodeIgniter 框架和启动应用程序两项工作。</p>
<p>1. 实例化 CI_Benchmark,这个类用于标记应用程序执行消耗的时间;<br>
2. 载入应用程序的配置文件 require(APPPATH.?config/config&#8216;.EXT);<br>
3. 实例化 CI_Config,这个类用于将数组封装为可以操作的配置服务;<br>
4. 实例化 CI_Router,这个类用于分析 URL 请求,确定要执行的控制器和动作;<br>
5. 实例化 CI_Output,这个类提供输出内容的缓存和检查服务;<br>
6. 通过 $OUT-&gt;_display_cache($CFG, $RTR) 尝试输出缓存内容,如果成功,则结束程序运行;<br>
7. 判断控制器类定义文件是否存在。如果不存在则通过 show_404() 显示错误信息;<br>
8. 实例化 CI_Input,这个类提供对 $_GET、$_POST 的访问手段,并封装了一些过滤方法;<br>
9. 实例化 CI_URI,这个类提供对 URL 的分析、构造服务;<br>
10. 实例化 CI_Language,这个类提供多语言字符串映射服务;<br>
11. 载入 codeigniter/Base4.php 或者 codeigniter/Base5.php;<br>
12. 载入 libraries/Controller.php;<br>
13. 载入控制器类定义文件;<br>
14. 实例化控制器类;<br>
15. 如果控制器使用了 scaffolding 功能,则调用控制器的 _ci_scaffolding() 方法,否则调用控制器动作方法;<br>
16. 通过 $OUT-&gt;_display(); 输出内容($OUT 是 CI_Output 的实例)。<br>
发表于 2014-4-26 17:17:18 | 显示全部楼层
应该是结束时自动注销了 。不重复加载注册,内存都用完了。
发表于 2014-4-26 18:30:31 | 显示全部楼层
二楼最完善
 楼主| 发表于 2014-5-1 10:29:52 | 显示全部楼层

积位高手好象答得都看不懂啊,我问的是如何在请求开始,和结束的时候执行一些共用的东西,在哪里可以添加这样的代码

本版积分规则