Codeigniter:如何在我的项目中使用多个'MY_Model'?

时间:2014-01-26 10:18:19

标签: php codeigniter

我是CI的新手,我正在维护一个CI项目,这个项目之前由另一个人开发。

这个人在应用程序/核心中创建了自己的MY_Model,他创建的所有模型都扩展了MY_Model。

我不喜欢他建造的核心模型,而是想在我最近创建的其他模型中使用Jamie Rumbelow的MY_Model。

但由于几乎所有旧模型已经扩展了MY_Model,我不能只替换MY_Model。

我如何使用Jamie Rumbelow的MY_Model'并仍旧使旧模型有效?

感谢您的任何建议!

1 个答案:

答案 0 :(得分:2)

您必须重命名其中一个MY_Model类,并将它们放在MY_Model.php文件中(或者从那里包含重命名的文件)。例如,如果你要将Jamie Rumbelow的类重命名为JR_Model,那么这就是你的MY_Model.php文件的样子:

class MY_Model extends CI_Model {
    // your predecessor's code
}

class JR_Model extends CI_Model {
    // Jamie Rumbelow's code
}

...然后你可以在任何你喜欢的地方从JR_Model扩展,而不会破坏你的旧模型。

请注意,将文件名保留为“MY_Model.php”很重要,因为这是CodeIgniter在加载CI_Model扩展时会查找的内容。