从存储库对象返回什么类型?

时间:2013-12-20 08:35:58

标签: php repository-pattern

我正在尝试在我的应用程序中实现一个存储库模式。

目前,我的观点与模型紧密结合。

例如,

View1.php

foreach($news_rows ad $news) 
{
    echo $news->getPublishedDate();
}

如上所述, view1.php 正在访问 $ news 模型中的方法。

好吧,假设我有一个数据库模型的新闻存储库,该存储库根据调用的方法返回一个新的模型或新闻模型。一切都会好起来的。

将来,如果我将数据库切换到mongo或其他东西,我将不会使用相同的方法使用相同的模型。

我该如何处理这个问题?

我应该从现在开始返回数组吗?

1 个答案:

答案 0 :(得分:1)

我设法从SQL Server转到MongoDB而没有更改我从数据库层返回的对象。

要执行此操作,您需要包装数据层以将其抽象出来。我实现了独立于数据库的业务实体对象,行完全映射到对象并具有id的概念,但不包含指向其他实体数据的直接链接。