Php 为什么代码点火器';s型号/控制器/库未分开?

Php 为什么代码点火器';s型号/控制器/库未分开?,php,model-view-controller,codeigniter,Php,Model View Controller,Codeigniter,当你命名一个控制器时,它通常是类似于Blog 当您命名一个模型时,它通常与Blog\u model 当你命名一个库时,它通常是沿着Blog\u lib 然后,当您加载模型或库时,您可以通过 $this->load->model('blog\u model')或$this->load->library('blog\u lib') 然后通过 $this->blog\u model->do\u something()或$this->blog\u lib->do\u something() 因为如果这样

当你命名一个控制器时,它通常是类似于
Blog

当您命名一个模型时,它通常与
Blog\u model

当你命名一个库时,它通常是沿着
Blog\u lib

然后,当您加载模型或库时,您可以通过
$this->load->model('blog\u model')
$this->load->library('blog\u lib')

然后通过
$this->blog\u model->do\u something()
$this->blog\u lib->do\u something()

因为如果这样,您的模型、控制器和库不能具有相同的名称

现在我想知道为什么CodeIgniter不允许您通过例如
$this->load->model('blog')$这个->模型->博客->做点什么()

这对我来说要好得多

这是一个代码点火器限制,还是由于PHP的原因而导致的限制

也就是说,如果我有这种冲动,我是否可以修改代码点火器来实现这一点,或者我是否仍然会遇到无法重新声明类的博客。。。类型错误


如果是这样的话,代码点火器可以不被修改以允许你命名你的库blog\u libraryblog\u model,但是当你访问它时,加载器会去掉它?

我认为这在PHP中不是一个限制。这就是CI的设计方式。但是,修改核心文件,特别是loader类的核心文件,以实现您想要的,当然是有可能的,但这可能是一种过分的做法。对我来说,我发现这种类型的系统真的很容易使用,而且代码在以后很容易理解