我有一个班级说照片和代码如
class photo
{
public function __construct($UserWhosePhotoToBeGetObj)
{
$this->UserWhosePhotoToBeGetObj = $UserWhosePhotoToBeGetObj
}
}
public function getPhoto()
{
// some complex logic and query to get detail of photo of user.
}
现在的问题是,当我想获得多个用户的照片时,如果我在循环中调用此类,那么将触发许多查询,如果我创建类photoArr
,那么我需要在两者中编写复杂的逻辑类。
答案 0 :(得分:0)
也许,您可以在一个函数中捆绑基于用户形成查询的逻辑,并在多个用户的情况下一次又一次地调用该函数。我想不到避免收集多个用户。
答案 1 :(得分:-1)
“照片”听起来像一个数据类。数据类不应包含用于获取内容的逻辑。在构造函数中传入“获取照片的用户”似乎也是错误的。
这样的逻辑可能应该放在具有当前getPhoto逻辑的PhotoFetcher类中。例如getPhotoForUser(User $ userForWhichToGetPhoto)。它还可以支持批量提取。