使用传统的OOP,我会(或者可以,更确切地说)创建一个表示User
的模型/对象,并具有反映name
、id
、job title
等属性。
然后,我可以创建该对象的新示例并将其分配给变量,如果我循环遍历结果集,我可以为每个结果集创建一个示例。使用CodeIgniter,这似乎是不可能的,因为这样做:
$this->load->model('User');
字符串
示例化它,并将其放置在$this->user
上使用。
有没有更传统的方式来使用模型作为对象呢?但又不需要破解CodeIgniter的方式?
我知道你可以用$this->load->model('User', 'fubar')
把东西赋给一个不同的对象名,但它不如简单地把一个示例赋给一个变量那样动态。
感谢大家的回答。我想我错过了使用“CodeIgniter Way”的一个重要部分,但我刚刚浏览了一个贡献的库,使用相同的示例(分配给CodeIgniter命名空间)的做法,但每次使用后清除示例变量,似乎是一个很好的工作方式,消除了我的保留意见。
4条答案
按热度按时间7xllpg7q1#
你不必使用
load()
函数,你可以像平常一样使用require_once
和new User()
。load()
应该只用于全局CodeIgniter命名空间中你想要的东西。正如你所看到的,如果你试图将它用于所有东西,它会很快被污染。dba5bblo2#
你仍然可以像平常一样在CodeIgniter中示例化对象。
字符串
oymdgrw73#
是的,JustAnil和minboost说的是正确的。
字符串
9nvpjoqh4#
字符串