application存放与具体某个网站相关的所有数据,在该目录下包含以下文件夹:
cache:存放缓存文件。
config:网站的配置文件目录。
controllers:控制文件的目录。
core:应该是用于重写 systesms/core 中相应文件用的把。
errors:里面主要是定义了一些展示错误信息的页面。
helpers:存放实现一些辅助函数,或者修改、扩展 systems/helpers 中的相应文件。通过 $this->load->helper('filename'); 来引入帮助文件,直接在需要的地方调用函数名即可调用相应的函数。
hooks:不知道干嘛的。
language:存放与语言或者区域信息相关的内容。
libraries:存放自定义类文件,或者改写、扩展 systems/libraries 中的相应类。
注:通过 $this->load->library('Class_name',$params); 来实例化一个自定义类,官网的指南有错,这里的类名应该是 case sensitive 的; 通过 $this->class_name->function_name(); 来调用类的成员函数,这里的类名是 case insensitive 的。两处类名的大小写一定要注意。
logs:存放日志文件。
models:数据代码文件,MVC中的M。
third_party:第三方插件,类似于helpers目录的功能,但是这里面的文件包含更单一的功能函数。
views:视图文件。
创建自己的类文件步骤:
1. 在 libraries 目录下新建名为 HitClass.php 的类文件;
2. 在HitClass.php 文件中创建 HitClass 类;
3. 如果需要在类中调用config中的配置信息,可以通过 $ci = & get_instance(); $ci->config->load('config_file_name'); 来获取配置文件中的数据。自定义的配置文件中的数据只能用 $config 数组保存,不能自定义别的数组名字码?至少我试过不行。
4. 这样就可以在别处调用该类了。
5. 关于构造函数传递参数的问题,据说有两种方法,一种是通过在 $this->load->library() 函数中添加params的第二参数; 另一种是在config目录下建立与类名同名的配置文件。但是这两种方式我都没有尝试成功,请知道怎么使用的跟我说声。