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

控制器类名和所在文件名必须一致吗?

[复制链接]
发表于 2014-4-21 20:01:02 | 显示全部楼层 |阅读模式
Route的映射 是请求地址和控制器类名 还是控制器所在文件名?
另外 控制器类名和控制器所在文件的名称相应的大小写是如何规定的?

谢谢!

 楼主| 发表于 2014-4-22 08:24:23 | 显示全部楼层
自己回答下
Route映射是URI与控制器类名的映射
控制器类名与文件名应该一直 类名首字母大写

这个在CI用户指南有明确说明!
发表于 2014-4-21 21:35:52 | 显示全部楼层
CI里面是这么回事
发表于 2014-4-22 18:33:57 | 显示全部楼层
控制器名index.php
类名class Index extends MY_Controller{
发表于 2014-4-23 13:13:16 | 显示全部楼层
小刘 发表于 2014-4-22 18:33
控制器名index.php
类名class Index extends MY_Controller{

这个尽量避免, 因为CI里面有关键词index作为controller的入口method.  如果取名Index的话出现某些问题.  比如 函数构造
发表于 2014-4-23 13:27:04 | 显示全部楼层
控制器名称必须和类名相同,因为你网址访问这个控制器,CI会实例化这个类名,你才可以在网址后面用里面的方法
发表于 2014-4-24 15:20:26 | 显示全部楼层
IvanCI 发表于 2014-4-23 13:13
这个尽量避免, 因为CI里面有关键词index作为controller的入口method.  如果取名Index的话出现某些问题.   ...

可以手动写构造函数来避免此问题
public function __construct(){
    parent::__consturct();
}
发表于 2014-4-25 09:11:21 | 显示全部楼层
控制器名Index.php 文件名必须大写,否则ci3.0会提示文件不存在
类名class Index extends MY_Controller{

本版积分规则